.htaccess - Apache-in gizli super-funksiyası
.htaccess faylı Apache/LiteSpeed serverlərində çox güclü vasitədir. Bir neçə sətr kodla redirect, parol qoruma, gzip compress, cache və daha çoxunu edə bilərsiniz. Bu bələdçidə 10 ən vacib istifadə nümunəsi var.
İcmal
- 301 redirect (URL dəyişdirmək)
- HTTPS-ə yönləndirmə
- WWW-siz versiyaya yönləndirmə
- 404 səhifəsini fərqli et
- Qovluğu parol ilə qoru
- IP bloklamaq
- Hotlink protection
- Gzip compression
- Browser cache
- WordPress permalink
301 redirect (URL dəyişdirmək)
Köhnə URL dəyişdirildikdə Google və istifadəçilərə yeni ünvanı göstərir. 301 daimi redirect-dir (SEO ötürür).
Redirect 301 /kohne-url https://saytinız.az/yeni-url
Tam domeni dəyişdirmək
RewriteEngine OnRewriteRule ^(.*)$ https://yeni-domen.az/$1 [R=301,L]
HTTPS-ə yönləndirmə
HTTP gələnləri avtomatik HTTPS-ə yönəltmək:
RewriteEngine OnRewriteCond %{HTTPS} offRewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
WWW-siz versiyaya yönləndirmə
www.saytinız.az → saytinız.az (və ya tərsi). SEO üçün vacibdir - Google duplicate hesab edə bilər.
RewriteEngine OnRewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
404 səhifəsini fərqli etmək
Tapılmayan səhifələr üçün öz dizaynlı səhifə.
- public_html-də
404.htmlfaylı yaradın - .htaccess-ə:
ErrorDocument 404 /404.html
Digər xətalar
ErrorDocument 403 /403.htmlErrorDocument 500 /500.html
Qovluğu parol ilə qoru
Admin paneli və ya test qovluğuna parolla giriş.
- cPanel → "Directory Privacy" istifadə edin (avtomatik), və ya manual:
- public_html/admin/.htaccess yaradın:
AuthType BasicAuthName "Restricted Area"AuthUserFile /home/user/htpasswdRequire valid-user
htpasswd faylı htpasswd komandası ilə yaradılır.
IP bloklamaq
Müəyyən IP-dən gələn bütün istəkləri rədd etmək.
Order Allow,DenyAllow from allDeny from 1.2.3.4Deny from 5.6.7.0/24
Bütün ölkəni blok
cPanel → "IP Blocker" daha rahatdır.
Hotlink protection (şəkil oğurluğu)
Başqaları sizin şəkillərinizi öz saytlarında istifadə edirsə, onların saytında görünməsin.
RewriteEngine OnRewriteCond %{HTTP_REFERER} !^$RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?saytinız\.az [NC]RewriteRule \.(jpg|jpeg|png|gif|webp)$ - [F,L]
Gzip compression
Text fayllarını sıxır - sayt 30-70% daha tez yüklənir.
<IfModule mod_deflate.c>AddOutputFilterByType DEFLATE text/html text/plain text/xml text/cssAddOutputFilterByType DEFLATE application/javascript application/x-javascript</IfModule>
Hostinq.az-da onsuz da aktivdir, amma fərdi vhost-larda lazımdır.
Browser cache
Static fayllar (CSS, JS, şəkil) brauzerdə uzun-müddət saxlansın.
<IfModule mod_expires.c>ExpiresActive OnExpiresByType image/jpeg "access plus 1 year"ExpiresByType image/png "access plus 1 year"ExpiresByType image/webp "access plus 1 year"ExpiresByType text/css "access plus 1 month"ExpiresByType application/javascript "access plus 1 month"</IfModule>
WordPress permalink
WP-də default Permalink: Plain (?p=123). Pretty URL üçün lazım .htaccess:
# BEGIN WordPress<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</IfModule># END WordPress
WordPress bunu Settings → Permalinks-də avtomatik əlavə edir.
Mühüm qeydlər
- .htaccess hər istəkdə oxunur → çox böyük olsa sayt yavaşladır
- Səhv yazılan rule sayt-ı tamamilə dayandıra bilər (500 error)
- Hər dəyişiklikdən əvvəl backup alın (.htaccess.bak)
- Sayt sındısa hosting File Manager-də .htaccess-i rename edin (deaktiv olur)
FAQ
.htaccess hara qoyulur?
public_html-də root-da. WordPress üçün avtomatik orada yaranır.
.htaccess silmək olar?
Olar, amma redirect-lər və qoruma da getsin. Sayt onsuz da işləyir amma WordPress permalink "Plain" rejiminə qayıdır.
Çoxlu .htaccess olabilir?
Bəli - hər qovluq üçün ayrıca. Lakin overhead artır, performans düşür. Mümkünsə tək root-da saxlayın.
Nginx-də .htaccess işləyir?
Yox - Nginx-də farkı sintaksis var. Lakin LiteSpeed Apache-uyğundur, .htaccess işləyir.
Hostinq.az hostingi tam Apache/LiteSpeed
.htaccess tam dəstəklənir - bütün rules normal işləyir. cPanel File Manager-də rahat redaktə.
Hosting paketləri