Web performansı ve yükleme hızı web üzerinde bulunan sıcak konular arasındadır. Web siteniz ya da blog sayfanız yavaşsa, insanlar sizin web sitenize tekrar geri gelmeyeceklerdir. İyi haber, en önemli site optimizasyonları bazıları .htaccess ip uçları ile elde edilebilir. Bu blog yazısı diğerlerinin arasında biraz farklı, URL yönlendirmeleri ile sitenizin hızını arttırmanız mümkün, bunları .htaccess parçacıkları koleksiyonu ile sağlayabilirsiniz.
.htaccess Apache Web Sunucusunu kontrol etmek ve yapılandırmak için birden fazla komut sağlayan özel bir yapılandırma dosyasıdır. Ancak, günümüzde tüm web geliştiricileri bundan habersiz veya tam olarak ne olduğunu anlamış değillerdir. .htaccess parçacıkları gerçekten güçlü ve genellikle fark edilemez. Bu yöntem sadece web sitenizi hızlandırmak için değil aynı zamanda SEO optimizasyonu ve diğer amaçlar için bir dizi amaç için kullanılabilir.
Herhangi bir değişik uygulamadan önce, bu dosya üzerinde yapacağınız değişikliklerin olabileceğini göz önünde bulundurun, herhangi yanlış bir karakter hatası bile size zorluk çıkaracaktır, bu yüzden yedek almanız tavsiye edilir. Sonuç olarak, bütün web sayfanız hasar görebilir.
Eğer bir sunucu üzerinde .htaccess dosyanızı güncelleyecek'seniz, gerekli kontrolleri yaparak web sitenizin düzgün çalıştığından emin olun. Eğer aksi taktirde bir sonuç alırsanız, .htaccess dosyanızın kopyasını geri yükleyin.
SEO dostu URL'ler
Web sitelerinin ham URL yapısı index.php?git=704 gibi adreslerden oluşmaktadır. İdeal olarak bir SEO dostu bağlantılar, anahtar kelime özelliği ile blog yazı başlıkları gibi Google veya diğer arama motorları tarafından kullanılacak şekilde sayfanın adını yeniden değiştirebilirsiniz.
1 2 | ForceType application/x-httpd-php5 |
Eski alan adınızı yenisi ile değiştirin
301 yönlendirme tekniği olarak bilinir. Onun yardımı sayesinde, ayrı sayfaları tekbir sayfa olarak gösterebilir ve yönlendirebilirsiniz. Tek bir yönlendirme sayfası için bu kodu kullanın.
1 | Redirect 301 /eski.html http://www.sizinsiteniz.com/yeni.html |
Tüm site yönlendirmesi için;
1 | Redirect 301 / http://yenisite.com/ |
Her iki durumda da, eski URL ikinci bölümde onu izleyen domain'den önce gelir.
URL'den www kaldırmak
Kullanıcıların rahatlığı ve daha iyi bir SEO sıralaması için sitenizin URL'sinden www kaldırmak isteyebilirsiniz. Aşağıdaki kod yardımı ile www kaldırabilir ve http:/ …. başlayan site adresinizi kullanıcılara iletmeniz mümkün olacaktır.
1 2 3 | RewriteEngine On RewriteCond %{HTTP_HOST} !^benimsiten.com$ [NC] RewriteRule ^(.*)$ http://benimsitem.com/$1 [L,R=301] |
Hata Sayfası
Kullanıcılarınız bozuk bir URL'ye tıkladıkları zaman, ziyaretçilerimiz boş bir sayfaya yönlendirilmelidir. Bunun yerine, sitenizi gezen ziyaretçilerin web sitenizde kalması için çalışan bağlantılar sağlayarak onlara güzel tasarlanmış bilgilendirici bir yata sayfası oluşturabilirsiniz.
1 2 3 4 5 | ErrorDocument 400 /errors/badrequest.html ErrorDocument 401 /errors/authrequest.html ErrorDocument 403 /errors/forbidden.html ErrorDocument 404 /errors/notfound.html ErrorDocument 500 /errors/servererror.html |
Daha iyi bir şekilde önbelleğe alma ve site hızını iyileştirme
Daha fazla sayfa yüklemeleri, sitenizin arama sonuçlarında daha bir konumda olmasını sağlayacaktır. Web geliştiricileri uzun bekleme sürelerinin önüne geçmek için kesinlikle çaba harcıyorlar ancak, masaüstü ve mobil cihazlarda web siteleri oluşturmak pekte kolay bir iş değil. Aslında ön bellek kullanılmasının tamda nedeni budur. Ancak, dikkate almamız gereken önemli bir şey var - başka hiç bir önbellekleme sisteminizin olmadığına emin olun. Ayrıca, ön belleğe alma uzunluğuna karar vermenizde gerekmektedir. Örnek olarak size 24 saati nasıl ön belleğe alacağınızı göstermeye çalışacağım.
1 2 3 | <FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf)$"> Header set Cache-Control "max-age=28800" </FilesMatch> |
Önbelleğe alınan dosyaları engelleyin
Özellikle önbellek'te dosyalarınızı tutmak istemiyorsanız, kolaylıkla .htaccess dosyası ile belirli bir kod ekleyerek bunu kontrol edebilirsiniz.
1 2 3 | <FilesMatch ".(pl|php|cgi|spl|scgi|fcgi)$"> Header unset Cache-Control </FilesMatch> |
Web sitenize bakım notu ekleyin
Sanırım hepimiz bir kere yeni ürün tanıtımından önce Apple'nin popüler "Yakında" yazan bakım sayfasına denk geldiniz. Bu örneği izleyerek bazı durumlarda harika duyuruları yapmak adına böyle bir sayfa ile ziyaretçilerinize tanıtım yapabilirsiniz. Aşağıdaki kod yardımı ile özel bir ev İP adresi 127.0.0.1 bulunuyor, bu adres üzerinden gelen herkesi yönlendirebilirsiniz.
1 2 3 | RewriteCond %{REMOTE_ADDR} !your_ip_address RewriteCond %{REMOTE_ADDR} !127.0.0.1 RewriteRule !offline.php$ http://www.example.com/back_soon.html [L,R=307] |
Mobil içerik taramasında değişik başlık kullanın
Bir çok web geliştiricisi kendi web sitelerinin mobil ve masaüstü sürümleri için farklı URL'ler vermek isteyebilir. Bun Responsive tasarımda HTML, değiştirilerek yapılabilir. Bu gibi durumlarda “Vary” header başlığını Google'ye bildirmek için vazgeçilmez bir bileşen ve daha iyi sayfa indexleme sağlar mobil kullanıcılar ve HTML kullanıcılar içinde değişiklikleri uygular.
1 | Header append Vary: User-Agent |
Hotlinking resimlerini önleyin
Sık sık olduğu gibi bir takım insanlar sizin web sitenizde bulunan görüntüleri çalmaktadırlar. Bu gibi insanlara resim hotlinking diyoruz. Web sitenizde insanlar görüntüleri çalarak sizin bant genişliğin'izden yararlanmaktadırlar. Bunun için, sizler .htaccess içerisine aşağıda bulunan kodu ekleyin.
1 2 3 4 5 | RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourwebsite.com [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourwebsite.com [NC] RewriteRule \.(jpg|jpeg|png|gif)$ http://i.imgur.com/g7ptdBB.png [NC,R,L] |
rel="canonical" etiketi
Eğer benzer içeriğe sahip birden fazla sayfanız varsa içerik kopyalamayı ve web sitenizin arama motorları tarafından engellenmesini istiyorsanız bu durumda rel="canonical" etiketi kullanıcı kullanıcıların orijinal içeriğe ulaşmalarını için kullanabilirsiniz. Ayrıca bu etiket PDF dosyalarına da uygulanabilir. Burada her ikisinde de nasıl çalıştığını görebilirsiniz.
1 2 3 4 5 6 | <Files download.pdf> Header add Link '<http://www.tomanthony.co.uk/httest/pdf-download.html>; rel="canonical"' </Files> Header add Link '<http://www.tomanthony.co.uk/httest/product-page.html>; rel="canonical"' |
Yedekleme ve kaynak dosyalarının erişimini engellemek
Bazı dosyalar risk altına girebilir ve bazı insanlar onlara ulaştığında büyük bir güvenlik teklikesi oluşturabilir. Böyle bir şeyin gerçekleşmemesi için aşağıdaki kodu uygulayın.
1 2 3 4 5 6 7 8 | <FilesMatch "(\.(bak|config|dist|fla|inc|ini|log|psd|sh|sql|swp)|~)$"> ## Apache 2.2 Order allow,deny Deny from all Satisfy All ## Apache 2.4 # Require all denied |
Şifre ile bir dizin koruma
Yetkisiz kullanıcı belgeleri, görüntüleri ve diğer verileri ile korumak adına yüksek değerlere sahiptir. Elbette, giriş yetkilendirme bilgilerini PHP ile gerçekleştirebilirsiniz, ancak aynısı ve çok daha kolay bir şekilde yapılabilen .htaccess ile yapabilirsiniz. İki dosya hazırlamanız gerekir - ilk kodu .htaccess dosyası ve diğeri ise tüm izinleri kullanıcılara kapalı olarak .htpasswd dosyası kullanılmalıdır. İşte .htaccess dosyasının nasıl göründüğüne bakalım.
1 2 3 4 | AuthType Basic AuthName "restricted area" AuthUserFile /home/davidwalsh/html/protect-me-dir/.htpasswd require valid-user |
Kuvvetli dosya indirmek için
Eğer web sitenizde bazı içerik sağlayan kullanıcıların bir belge, ses veya video dosyasını açabilmek için benzeri bağlantılar paylaşabilirsiniz veya yeni bir indirme penceresinde. .htaccess dosyanıza aşağıdaki kodu ekleyin ve ziyaretçilerinizin sitenizde paylaşılan içeriğin bir kopyasını sunacaktır.
1 2 | ForceType application/octet-stream Header set Content-Disposition attachment |
Gzip Sıkıştırma
Daha hızlı bir şekilde dosya indirmenizi sağlar, HTML ve CSS dosyalarını sıkıştırma günümüzde oldukça popüler. Her nedenle web siteniz için böyle bir uygulama kullanmıyorsanız artık zamanı geldi. Sunucunuz üzerinde bulunan .htaccess dosyanıza bu kodu ekleyin.
1 2 3 4 5 6 7 8 | mod_gzip_on Yes mod_gzip_dechunk Yes mod_gzip_item_include file .(html?|txt|css|js|php|pl)$ mod_gzip_item_include handler ^cgi-script$ mod_gzip_item_include mime ^text/.* mod_gzip_item_include mime ^application/x-javascript.* mod_gzip_item_exclude mime ^image/.* mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* |
Web sitenize gelen birisini engellemek
Eğer siz web sitenizin erişimini belirli bir kullanıcıya ve bazı kötü amaçlı insanları istemiyorsanız bu kod yardımı ile web sitenize gelen kişileri kontrol altına alabilirsiniz.
1 2 3 4 | order allow,deny deny from 123.456.78.9 deny from 987.654.32.1 allow from all |
Gördüğünüz gibi bu sayfadaki ipuçları ile 301 profesyonel SEO ve benzeri hata işlemleri uygulayarak daha geniş bir kitleye hizmet edin. Temel .htaccess parçacıkları hızlı bir erişim ile tonlarca web kaynağını optimize ederek zamandan kazandırıken ayrıca fonksiyonel ve kullanıcı dostu yapabilmeniz adına size yardımcı olur. Bu ipuçlarından yararlanabilir ve paylaşarak arkadaşlarınıza da ulaşmasını sağlayabilirsiniz.