Maqaalkani, waxaanu sahamin doonaa mabaadi'da aasaasiga ah ee isticmaalka faylka .htaccess, kaas oo muhiim u ah horumarinta SEO. Faylkan waxa uu hubinayaa tusmaynta saxda ah ee bogagga matoorada raadinta. Waxaan baran doonaa sida loo maamulo jiheynta, habeynta amniga, iyo kor loogu qaado waxqabadka. Intaa waxaa dheer, waxaan ku siin doonaa talooyin ku saabsan sida loo habeeyo faylkan si madaxbannaan.
Waa maxay sababta .htaccess loo baahan yahay
Faylka .htaccess wuxuu u shaqeeyaa sidii nooc ka mid ah "kontoroolka fog" ee horumarinta shabakadaha server-yada Apache. Waxay bixisaa qalab ku habboon hagaajinta cabbirro kala duwan iyo maaraynta habdhaqanka mareegaha. Marka si toos ah loo galo faylalka qaabeynta ugu weyn ee server-ka aan la heli karin (sida inta badan dhacda martigelinta farsamada, tusaale ahaan), .htaccess waxay noqotaa qalab waxtar leh oo lagu sameeyo isbeddellada lagama maarmaanka ah.
Htaccess waxay inta badan ku taal galka xididka ee goobtaada ama faylalkaas halkaasoo qaabeynta gaarka ah looga baahan yahay. Tusaale ahaan, haddii aad isticmaasho WordPress, qaabeynta waxaa lagu samayn karaa iyada oo loo marayo Yoast SEO plugin, kaas oo aan kaga hadalnay maqaalka Habaynta robots.txt. Xaaladaha kale, waa ku filan inaad tagto faylka loo baahan yahay oo aad wax ka beddesho faylka .htaccess ee jira, ama samee haddii aan weli la abuurin.
Dejinta faylka .htaccess
301 Redirect htaccess
Dib u jiheynta 301 ee faylka .htaccess waxa lala mid dhigi karaa jihaynta joogtada ah ee shabakada. Waxay ku wargelinaysaa makiinadaha raadinta iyo daalacashada in boggu hadda si joogto ah ugu yaallo ciwaan cusub waxayna soo jeedinaysaa cusboonaysiinta bookmarks iyo tusmaynta. Dib u hagitaan noocan oo kale ah ayaa sida caadiga ah loo adeegsadaa marka bogga la guuro ama la tirtiro si loo ilaaliyo darajada ay ku leedahay natiijooyinka raadinta oo loo jiheeyo booqdayaasha goobta cusub.
Si aad u dhaqaajiso jihaynta, waxaad u baahan tahay inaad awood u siiso amarka u dhigma ee faylka .htaccess:
RewriteEngine on
Taas ka dib, waxaad habeyn kartaa qaabka ugu fudud ee dib u jiheynta:
<IfModule mod_rewrite.c>
RewriteEngine On
Redirect 301 /old-page.html /new-page.html
</IfModule>
Dib-u-dejin la mid ah iyadoo la adeegsanayo Dib u habayn joogto ah dardaaranku wuxuu u eg yahay sidan:
<IfModule mod_rewrite.c>
RewriteEngine On
Redirect permanent /old-page.html http://new-domain.ru/new-page.html
</IfModule>
Kuwani waa hababka dib u jiheynta ee ugu fudud ee la isku habeeyay Aynu tixgelinno qaabaynta adeegsata noocyo kale, oo aad u horumarsan oo jihooyin leh mod_rewrite module:
<IfModule mod_rewrite.c>
RewriteEngine On
# Redirecting from one page to another
RewriteRule ^old-page.html$ http://www.example.com/new-page.html [R=301,L]
# Redirecting all traffic from one domain to another
RewriteCond %{HTTP_HOST} ^oldsite.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.oldsite.com$
RewriteRule ^(.*)$ http://www.newsite.com/$1 [R=301,L]
# Redirecting from www to non-www (or vice versa)
RewriteCond %{HTTP_HOST} ^www.example.com$
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
# Redirecting from HTTP to HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
# Redirecting from one subdomain to another
RewriteCond %{HTTP_HOST} ^subdomain1.example.com$
RewriteRule ^(.*)$ http://subdomain2.example.com/$1 [R=301,L]
</IfModule>
A 302 redirect .htaccess, oo tilmaamaysa raritaan ku meel gaar ah, waxa lala kulmaa si aad u yar. Waa kan tusaale ahaan goobtan oo kale:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^old-page.html$ /new-page.html [R=302,L]
</IfModule>
Dukumentiga qaladka tilmaamaha
Goobtani waxay kuu ogolaanaysaa inaad xakamayso waxa isticmaaluhu arko marka khaladaadka HTTP ay ka dhacaan goobtaada. Halkii laga heli lahaa fariinta qaladka caadiga ah, waxaad tusi kartaa boggaaga, kaas oo noqon doona mid macluumaad dheeraad ah u leh booqdaha oo ka caawiya inay fahmaan waxa dhacay. Kaliya raac ereygan sintax si aad u isticmaasho:
ErrorDocument <error_code> <URL_page>
Tusaale ahaan,
ErrorDocument 404 /errors/not_found.html
Waxaa loola jeedaa marka a 404 qalad ayaa dhaca, bogga at / khaladaad/ma_helin.html waa la furi doonaa. URL-yada dhammaystiran ayaa loo cayimay si la mid ah:
ErrorDocument 500 http://example.com/errors/server_error.html
Tusaalahan ayaa tilmaamaya bandhigga server_error.html bogga at http://example.com/errors/ haddii ay dhacdo a 500 qalad
Diidmada Gelitaanka Hagaha Goobta
Faylka .htaccess wuxuu leeyahay amarka Ka diid dhammaan, kaas oo gacan ka geysta diidmada galitaanka galka ama faylasha qaarkood ee server-kaaga shabakadda. Tani waxay noqon kartaa mid faa'iido leh haddii aad rabto inaad qariso macluumaadka gaarka ah ama faylasha muhiimka ah ee booqdayaasha goobta si loo xaqiijiyo ammaanka xogta.
Si aad u joojiso liiska (fiirinta dhammaan hagayaasha la heli karo), waxaad u baahan tahay inaad ku darto khadka:
Options -Indexes
Tusaalaha xannibaadda gelitaanka hagaha gaarka ah ayaa u eg sidan:
<Directory /path_to_your_directory>
Order Deny,Allow
Deny from all
</Directory>
Sidoo kale, waxaad u diidi kartaa gelitaanka hal fayl:
<Files "file.php">
Order Deny,Allow
Deny from all
</Files>
Ama faylal kala duwan marka la kordhiyo:
<FilesMatch "\.(txt|log|bak)$"> # Select the desired extensions, in the example: txt, log, bak
Order Deny,Allow
Deny from all
</FilesMatch>
Joojinta gelitaanka IP-ga
Joojinta gelitaanka IP-ga ee faylka .htaccess waa hab kuu ogolaanaya inaad xaddiddo gelitaanka boggaaga cinwaanno IP gaar ah ama kooxahooda. Tani waxay noqon kartaa mid faa'iido leh haddii aad rabto inaad ka hortagto gelitaanka goobtaada ama qaybaheeda gaarka ah ee dadka qaarkood ama bots-ka aan la rabin.
Joojinta hal ciwaan IP ah waxaa lagu sameeyaa amarka:
Order Deny,Allow
Allow from all
Deny from 11.22.33.44
Xiritaanka dhowr cinwaan oo IP ah ayaa la sameeyaa si la mid ah iyadoo la koobiyaynayo "Ka diid" oo leh cinwaanada loo baahan yahay.
Si loo xannibo cinwaanno IP oo kala duwan:
Order Deny,Allow
Allow from all
Deny from 11.11.11.11/24
Si loo oggolaado gelitaanka IP-yada gaarka ah, ku dar koodka:
Order Deny,Allow
Deny from all
Allow from 11.22.33.44
Diidmada dhammaystiran ee gelitaanka, isticmaal dardaaranka Ka diid dhammaan, iyo xannibaadda ciwaannada waji-xidhka, sheeg Diid laga bilaabo 11.22.
Halkee, 11.22 waa cinwaanka IP-ga hoosaasin.
Joojinta Soo-booqdayaasha ee Wakiilka Isticmaalaha
Joojinta isticmaalayaasha by User-Agent ee faylka .htaccess waa habka lagu xakameynayo cidda geli karta mareegahaaga iyadoo lagu salaynayo macluumaadka ku saabsan browserka booqdehu isticmaalo. Xadhkaha Isticmaalaha-Wakiilka waxa ka kooban xog ku saabsan browser-ka uu qofku u isticmaalo si uu ula falgalo serferkaaga, mahaddana macluumaadkan, waxaad xaddidi kartaa gelitaanka isticmaaleyaasha qaarkood.
Habka ugu badan ee loo xannibo by User-Agent waa in la isticmaalo mod_rewrite:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^Bot1 [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot2 [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot3 [NC]
RewriteRule ^.*$ - [F,L]
</IfModule>
Tusaalahan:
- RewriteCond %{HTTP_USER_AGENT} waxa loo istcmaalaa in lagu hubiyo xadhigga Wakiilka Isticmaalaha.
- ^Bot1, ^Bot2, ^Bot3 waa tusaalayaal xadhkaha-Wakiilada Isticmaalaha ee aan rabno inaan xannibno. Wax-ka-beddelayaasha NC-du waxay muujinayaan in isbarbardhigga uu ahaado mid xaalad-la'aan ah.
- Dib u qor Xeerka ^.*$ - [F,L] waxay khusaysaa codsiga haddii mid ka mid ah shuruudaha RewriteCond la buuxiyo. Waxay soo dirtaa jawaab leh 403 Koodhka Xaaladda Reeban (F) waxayna joojisaa sharciyada habaynta (L).
Ku kaydinta htaccess
Ku habeynta kaydinta iyada oo loo marayo faylka .htaccess waxay kaa caawineysaa inaad dedejiso goobtaada adoo ka dhigaya mid si degdeg ah ugu shubaya isticmaalayaasha. Waxay u shaqeysaa sidan: faylalka qaarkood, sida sawirada, qaababka CSS, iyo qoraallada JavaScript, ayaa lagu kaydiyaa kaydka browserka isticmaalaha ka dib culeyska ugu horreeya. Hadda browserku wuxuu isticmaali karaa faylashaas khasnadda, halkii laga soo dejin lahaa server-ka mar kasta oo isticmaaluhu booqdo bog. Tani waxay yaraynaysaa wakhtiga rarida waxayna wanaajisaa waxqabadka goobta.
Ka fiirso tusaale:
# Enable caching for images for 1 month
<FilesMatch "\.(jpg|jpeg|png|gif|svg)$">
Header set Cache-Control "max-age=2592000, public"
</FilesMatch>
# Enable caching for CSS and JavaScript for 1 week
<FilesMatch "\.(css|js)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
Ilaha inta badan la cusboonaysiiyo, dhanka kale, waa lagama maarmaan in la joojiyo kaydinta:
# Excluding caching for HTML pages and XML files
<FilesMatch "\.(html|xml)$">
Header set Cache-Control "no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "0"
</FilesMatch>
Hagaajinta Waxqabadka Goobta
The mod_deflate iyo mod_gzip Qaybaha Apache waxay caawiyaan isku-buufinta macluumaadka uu seerfarku u soo diro aaladaha isticmaaleyaasha. Tani waxay ka dhigaysaa faylalku inay yareeyaan cabbirkooda, taas oo iyaduna dedejisa rarista bogga. Si kastaba ha ahaatee, waxaa muhiim ah in la xasuusto in taageerada iyo habaynta qaybahan ay kala duwanaan karaan iyadoo ku xiran server-kaaga.
Tusaalaha isticmaalka mod_deflate module:
<IfModule mod_deflate.c>
# Compressing text file types
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>
Tusaale ahaan mod_gzip:
<IfModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$ # Enabling compression for files with extensions .html, .txt, .css, .js, .php, .pl
mod_gzip_item_include mime ^application/x-javascript.* # Enabling compression for MIME types starting with application/x-javascript
mod_gzip_item_include mime ^text/.* # Enabling compression for MIME types starting with text/
mod_gzip_item_exclude mime ^image/.* # Excluding from compression MIME types starting with image/
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* # Excluding already compressed data (responses with the Content-Encoding: gzip header)
</IfModule>
Waxaan ka wada hadalnay dardaaranka inta badan la isticmaalo. Waxaad naftaada u baran kartaa dhammaan awoodaha faylka ee ku jira dokumentiyada rasmiga ah.
Sida loo hubiyo shaqeynta File .htaccess
Si aad u hubiso in faylkaaga .htaccess uu ka shaqaynayo goobta, waxaad samayn kartaa tillaabooyinka soo socda:
- Si ula kac ah u beddel faylka .htaccess qalad. Jawaabta, server-ku waa inuu bixiyaa qalad. Habkani wuxuu muujinayaa in hawlgalka faylka guud ahaan lagu dabaqay server-ka.
- Hubi shaqaynta isbeddellada gaarka ah ee aad samaysay. Tusaale ahaan, wax yar ka samee mid ka mid ah halbeegyada oo qiimee joogitaanka isbeddelada.
- Hubi nambarka heerka bogga haddii isbedeladu ay la xiriiraan jawaabta server-ka. Sida tan loo sameeyo, waxaan horey ugu sharaxnay maqaalka Xeerarka qaladka HTTP: liis dhamaystiran oo khaladaad server ah.
- Tixraac diiwaanka serverka Waxay soo bandhigaan dhammaan khaladaadka la xiriira hawlgalka faylka .htaccess.
- Samee tijaabada adoo isticmaalaya adeegyada internetka ama qalabka.
Waxaa muhiim ah in la fahmo in si loo hubiyo shaqeynta faylka .htaccess, uma baahnid inaad sameyso dhammaan tillaabooyinka hal mar. Waa ku filan inaad ka doorato habka ugu habboon liiska oo aad isticmaasho.
Ugu Dambeyn
Dejinta faylka .htaccess waa tallaabo muhiim ah oo lagu hagaajinayo iyo ilaalinta server-kaaga Apache. Waxaan sahaminay sida faylkani uu u caawiyo maaraynta jihaynta, cadaadinta waxa ku jira, iyo xaqiijinta amniga. Markaad si fiican ula shaqeyso .htaccess, waxaad helaysaa qalab awood leh oo lagu hagaajinayo waxqabadka iyo shaqeynta shabakadaha.