Link Sonundaki .php .asp .html Uzantıları Gizleme

 Merhabalar  , php , asp , html dilleriyle yapılan sitelerde uzantıları gizlemek gerekebiliyor bazen. Bunu bildiğiniz gibi .htaccess dosyası ile yapıyoruz. Seo uyumlu url yapısı oluşturmak için gerekli özelliklerden bir tanesi de bu. Link Sonundaki .php .asp .html Uzantıları Gizleme için bir .htaccess dosyası oluşturun , varsa içerine girip şu kodları yazın.

Link Sonundaki .php .asp .html Uzantilari Gizleme - Link Sonundaki .php .asp .html Uzantıları Gizleme.Php uzantısını gizlemek için :

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

VEYA

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [NC,L]

.html uzantısını gizlemek için :

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html [NC,L]

Link Sonundaki .php .asp .html Uzantıları Gizleme

Burada yer alan kodlardan bahsedecek olursam , ilk satır zaten .htaccess kodunu çalıştırmak için gerekli. İkinci satırda nereyi düzenleyeceğimizi seçiyoruz. Üçüncü satırda ise tahmin edebileceğiniz gibi dosya uzantısını giriyoruz.Ben php tabanlı çalıştığım için php uzantısını girdim.En son satır ise $ işaretinden sonra gelecek uzantıyı gizlemeye yardımcı oluyor.Eğer quit.php ya da contact.php gibi uzantıya sahip sayfalarınız var ise bu yöntemle onlar siteadi.com/quit ya da siteadi.com/contact olarak değiştirebilirsiniz.

Bunun neden yapıldığına bakacak olursak ; sonuçta bu yapılan uzantılar kullanıcıyı çokta ilgilendirmiyor. Seo uyumlu link yapmaktaki asıl amaç da kullanıcı için uygun linki göstermekse şayet böyle bir kullanım doğru olacaktır.Ayrıca google amca .php .asp gibi uzantıları da sevmiyor bu arada.


Güncelleme

Yukarıdaki kodlar bazı arkadaşlar için 404 ve 500 hatalarını doğurduğu için aşağıda özellikle php projeleri için yeni ayarladığım kodu paylaşıyorum. Diğer uzantıları gizlemek isterseniz aynı mantığı uygulayabilirsiniz.

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php
RewriteRule ^([a-z]+)\/?$ $1.php [NC]
</IfModule>

Şayet linklerinizi index.php?sayfa=2 şeklinde oluşturduysanız bunu da düzeltmenin yolu var elbette. Bu konudan da bu yazımda bahsetmiştim. Eğer bu işlemleri yaptıktan sonra sayfanız çalışır fakat açılan sayfada bir css sorunu yaşarsanız yine sayfanın altında belirttiğim gibi <base href=”https://www.harunalp.com/” /> şeklinde bir yol belirtmeniz yeterli olacaktır. İyi çalışmalar 

Kaynak : https://www.harunalp.com/link-sonundaki-php-asp-html-uzantilari-gizleme/

Yorumlar