Kategoriler
Ivır zıvır

.htaccess ipucu: bulunamayan bozuk resim linkleri yerine resim göstermek

.htaccess ipucu: bulunamayan bozuk resim linkleri yerine resim göstermekBir web sitesinde sayfalara eklenmiş ve sonradan baglantıları bozulmuş, resimler silinmiş ise ziyaretçinin tarayıcısında bozuk/kırık halde görünüyor.

Bu kötü görünümün önüne geçmek için minik bir ipucu yazacağım eminim çok kişinin işine yarayacak, aslında buna hiç şüphem yok zira buradan kopyala yapıştırla Türkiye’yi baştan sonra dolaştıracak arkadaşlar sağolsun yeterince fazlalar 🙂 Şaka bir yana onlardan ricam bilgileri alsınlar ama o bilgileri kendi kelimeleri ile aktarsınlar başka yere öyle yaparlarsa helaldir.

Sitedenin ana dizininde bulunan . dosyasına eklemeniz gereken kod şöyle;

RewriteCond %{REQUEST_FILENAME}!-f
RewriteCond %{REQUEST_FILENAME}!-d
RewriteRule ^(.*).(gif|jpg|png)$ /varsayilan-resim-dosyasi.jpg [L,NC]

Yukarıdaki gif, jpg ve png dosyalarını bulunamadığında sitenin ana dizininde ki wolkanca.com/varsayilan-resim-dosyasi.jpg nı gösterecek.

Aşağıdaki kod ise gif, jpg ve png leri ayrı ayrı resimleri gösterebilmeniz için;

RewriteRule ^(.*).(gif|jpg|png)$ /varsayilan-resim-dosyasi.$2 [L,NC]

Yukarıdaki kod bulunamayan gif dosyasını varsayilan-resim-dosyasi.gif, bulunamayan jpg’i varsayilan-resim-dosyasijpg, png’yi de varsayilan-resim-dosyasi.png ye yönlendirir.

.htaccess dosyasına kodu aşağıdaki gibi yazabilirsiniz.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*).(gif|jpg|png)$ /varsayilan-resim-dosyasi.jpg [L,NC]
</IfModule>

Eğer site WordPress ise aşağıdaki gibi olabilir;

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule ^(.*).(gif|jpg|png)$ /varsayilan-resim-dosyasi.jpg [L,NC]
</IfModule>

veya böyle de deneyebilirsiniz;

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*).(gif|jpg|png)$ /varsayilan-resim-dosyasi.jpg [L,NC]
</IfModule>

Test etmek için bizim i.wolkanca.com da herhangi bir resim dosyasına bakabilirsiniz.