Kaʻikepili Nā ʻōlelo kuhikuhi maʻalahi e hana me ka lawelawe Profitserver
Main Kaʻikepili Ke hoʻonohonoho nei i ka faila .htaccess

Ke hoʻonohonoho nei i ka faila .htaccess


Ma kēia ʻatikala, e ʻimi mākou i nā kumu kumu o ka hoʻohana ʻana i ka faila .htaccess, he mea koʻikoʻi no ka hoʻonui ʻana i ka SEO. Mālama kēia faila i ka helu ʻana i nā ʻaoʻao e nā ʻenekini huli. E aʻo mākou pehea e hoʻokele ai i nā redirect, hoʻonohonoho i ka palekana, a hoʻonui i ka hana. Eia hou, e hāʻawi mākou i nā ʻōlelo aʻoaʻo e pili ana i ka hoʻonohonoho kūʻokoʻa ʻana i kēia faila.

No ke aha e pono ai ka .htaccess

Hana ʻia ka faila .htaccess ma ke ʻano he "mana mamao" no nā mea hoʻomohala pūnaewele ma nā kikowaena Apache. Hāʻawi ia i nā mea hana kūpono no ka hoʻoponopono ʻana i nā ʻāpana like ʻole a me ka mālama ʻana i ka ʻano o kahi pūnaewele. Ke loaʻa ʻole ke komo pololei i nā faila hoʻonohonoho nui o ka server (e like me ka mea maʻamau me ka hoʻokipa virtual, no ka laʻana), lilo ʻo .htaccess i mea hana pono no ka hana ʻana i nā loli kūpono.

Loaʻa pinepine ʻia ʻo Htaccess i ka waihona kumu o kāu pūnaewele a i ʻole i kēlā mau waihona kahi e pono ai ka hoʻonohonoho kūikawā. No ka laʻana, inā ʻoe e hoʻohana i ka WordPress, hiki ke hoʻonohonoho ʻia ma o ka Yoast SEO plugin, a mākou i kūkākūkā ai ma ka ʻatikala ma Ke hoʻonohonoho nei i nā robots.txt. Ma nā hihia ʻē aʻe, ua lawa ia e hele i ka waihona i makemake ʻia a hoʻoponopono i ka faila .htaccess i loaʻa, a i ʻole e hana inā ʻaʻole i hana ʻia.

Ke hoʻonohonoho nei i ka faila .htaccess

301 Hoʻihoʻi hou i ka htaccess

Hiki ke hoʻohālikelike ʻia kahi 301 redirect i ka faila .htaccess me kahi hoʻihoʻi mau ma kahi pūnaewele. Hoʻomaopopo ia i nā ʻenekini hulina a me nā mākaʻikaʻi e loaʻa mau ana ka ʻaoʻao ma kahi helu wahi hou a manaʻo ʻia e hoʻonui i nā bookmarks a me ka kuhikuhi ʻana. Hoʻohana maʻamau ia ʻano hoʻihoʻi i ka wā e hoʻoneʻe ʻia ai kahi ʻaoʻao e mālama i kona kūlana ma nā hopena hulina a hoʻihoʻi hou i nā malihini i kahi hou.

No ka ho'āla hou ʻana, pono ʻoe e ʻae i ke kauoha e pili ana i ka faila .htaccess:

RewriteEngine on

Ma hope o kēlā, hiki iā ʻoe ke hoʻonohonoho i ke ʻano maʻalahi o ka redirection:

<IfModule mod_rewrite.c>
RewriteEngine On
Redirect 301 /old-page.html /new-page.html
</IfModule>

ʻO kahi hoʻihoʻi like me ka hoʻohana ʻana i ka RedirectPermanent ʻO ke kuhikuhi e like me kēia:

<IfModule mod_rewrite.c>
RewriteEngine On
Redirect permanent /old-page.html http://new-domain.ru/new-page.html
</IfModule>

ʻO kēia nā ala hoʻihoʻi maʻalahi loa e hoʻonohonoho. E noʻonoʻo kākou i kahi hoʻonohonoho e hoʻohana ana i nā ʻano kuhikuhi hou aʻe me ka 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>

ʻO kahi 302 redirect .htaccess, e hōʻike ana i ka hoʻoneʻe manawa, ʻike pinepine ʻia. Eia kekahi laʻana o kēlā ʻano hoʻonohonoho:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^old-page.html$ /new-page.html [R=302,L]
</IfModule>

Palapala Hapa kuhikuhi

Hāʻawi kēia hoʻonohonoho iā ʻoe e kāohi i ka mea e ʻike ai ka mea hoʻohana i ka wā e loaʻa ai nā hewa HTTP ma kāu pūnaewele. Ma kahi o ka memo hewa maʻamau, hiki iā ʻoe ke hōʻike i kāu ʻaoʻao ponoʻī, e ʻoi aku ka ʻike no ka malihini a kōkua iā lākou e hoʻomaopopo i ka mea i hana ʻia. E hahai wale i kēia syntax no ka hoʻohana ʻana:

ErrorDocument <error_code> <URL_page>

ʻo kahi laʻana,

ErrorDocument 404 /errors/not_found.html

ʻO ia hoʻi, i ka wā a 404 hewa, ka ʻaoʻao ma /errors/not_found.html e weheia. Ua ho'ākāka like 'ia nā URL kiko'ī:

ErrorDocument 500 http://example.com/errors/server_error.html

Hōʻike kēia hiʻohiʻona i ka hōʻike ʻana o ka server_error.html ʻaoʻao ma http://example.com/errors/ i ka hanana o a 500 hewa.

E hōʻole ana i ke komo ʻana i kahi papa kuhikuhi pūnaewele

Aia ka waihona .htaccess i ke kauoha Hoole mai na mea a pau, e kōkua ana e hōʻole i ke komo ʻana i kekahi mau waihona a i ʻole nā ​​faila ma kāu kikowaena pūnaewele. Hiki ke hoʻohana ʻia kēia inā makemake ʻoe e hūnā i ka ʻike pilikino a i ʻole nā ​​faila koʻikoʻi mai nā malihini kipa e hōʻoia i ka palekana ʻikepili.

No ka hoʻopau ʻana i ka papa inoa (nānā i nā papa kuhikuhi āpau i loaʻa), pono ʻoe e hoʻohui i ka laina:

Options -Indexes

ʻO kahi laʻana o ka pale ʻana i ke komo ʻana i kahi papa kuhikuhi kikoʻī e like me kēia:

<Directory /path_to_your_directory>
Order Deny,Allow
Deny from all
</Directory>

Pēlā nō, hiki iā ʻoe ke hōʻole i ke komo ʻana i hoʻokahi faila:

<Files "file.php">
Order Deny,Allow
Deny from all
</Files>

A i ʻole no ka laulā o nā faila ma ka hoʻonui:

<FilesMatch "\.(txt|log|bak)$"> # Select the desired extensions, in the example: txt, log, bak
Order Deny,Allow
Deny from all
</FilesMatch>

Kāohi i ke komo ʻana ma o IP

ʻO ka pale ʻana i ke komo ʻana e IP ma ka faila .htaccess kahi ala e hiki ai iā ʻoe ke kaupalena i ke komo ʻana i kāu pūnaewele no nā helu IP kikoʻī a i ʻole kā lākou hui. Hiki ke hoʻohana i kēia inā makemake ʻoe e pale i ke komo ʻana i kāu pūnaewele a i ʻole kāna mau ʻāpana kikoʻī no kekahi poʻe a i ʻole nā ​​bots makemake ʻole.

Hoʻopau ʻia kahi leka IP hoʻokahi me ke kauoha:

Order Deny,Allow
Allow from all
Deny from 11.22.33.44

Hana ʻia ka pale ʻana i nā helu IP he nui ma ke kope ʻana i ka "Hoole mai" laina me nā helu i makemake ʻia.

No ka ālai ʻana i ka laulā o nā helu IP:

Order Deny,Allow
Allow from all
Deny from 11.11.11.11/24

No ka ʻae ʻana i ke komo no nā IP kikoʻī wale nō, e hoʻohui i ke code:

Order Deny,Allow
Deny from all
Allow from 11.22.33.44

No ka hōʻole piha ʻana, e hoʻohana i ke kuhikuhi Hoole mai na mea a pau, a no ka pale ʻana i nā helu wahi ma ka mask, e kuhikuhi Hoole mai 11.22.

Ma hea, 11.22 ʻo ia ka helu IP makakiʻi.

Kāohi i nā malihini e ka Mea Hoʻohana-Agent

ʻO ka pale ʻana i nā mea hoʻohana e ka User-Agent ma ka faila .htaccess kahi ala e hoʻomalu ai i ka mea hiki ke komo i kāu kikowaena pūnaewele ma muli o ka ʻike e pili ana i ka polokalamu kele a ka malihini e hoʻohana ai. Loaʻa i ka string User-Agent ka ʻikepili e pili ana i ka polokalamu kele pūnaewele e hoʻohana ai ke kanaka e launa pū me kāu kikowaena, a mahalo i kēia ʻike, hiki iā ʻoe ke kaohi i ke komo ʻana no kekahi mau mea hoʻohana.

ʻO ke ala maʻamau e ālai ʻia e ka User-Agent ʻo ia ka hoʻohana 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>

I kēia laʻana:

  1. Hoʻohana ʻia ʻo RewriteCond %{HTTP_USER_AGENT} e nānā i ke kaula Mea hoʻohana-Agent.
  2. ^Bot1, ^Bot2, ^Bot3 he mau la'ana o na kaula Mea hoohana-Agent a makou e makemake ai e pale. Hōʻike nā mea hoʻololi NC he pono ʻole ka hoʻohālikelike.
  3. RewriteRule ^.*$ - [F,L] pili i ke noi inā e hoʻokō ʻia kekahi o nā kūlana RewriteCond. Hoʻouna ʻo ia i kahi pane me ka 403 Forbidden status code (F) a hoʻopau i nā lula hana (L).

Hoʻokomo i ka htaccess

ʻO ka hoʻonohonoho ʻana i ka cache ma o ka faila .htaccess e kōkua i ka wikiwiki o kāu pūnaewele ma o ka hoʻouka wikiwiki ʻana i nā mea hoʻohana. E like me kēia: mālama ʻia kekahi mau faila, e like me nā kiʻi, nā ʻano CSS, a me nā palapala JavaScript, i loko o ka huna huna o ka mea hoʻohana ma hope o ka hoʻouka mua ʻana. I kēia manawa hiki i ka polokalamu kele ke hoʻohana i kēia mau faila mai ka cache, ma kahi o ka hoʻouka hou ʻana iā lākou mai ke kikowaena i kēlā me kēia manawa ke kipa aku ka mea hoʻohana i kahi ʻaoʻao. Hoʻemi kēia i ka manawa hoʻouka a hoʻomaikaʻi i ka hana pūnaewele.

E noʻonoʻo i kekahi laʻana:

# 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>

No nā kumuwaiwai i hoʻonui pinepine ʻia, ma ka ʻaoʻao ʻē aʻe, pono e hoʻopau i ka cache:

# 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>

Hoʻonui i ka hana pūnaewele

ka mod_deflate a mod_gzip ʻO nā modules ma Apache e kōkua i ka hoʻopaʻa ʻana i ka ʻike a ke kikowaena e hoʻouna ai i nā mea hoʻohana. ʻOi aku ka liʻiliʻi o nā faila i ka nui, ʻo ia hoʻi ka wikiwiki o ka hoʻouka ʻana i ka ʻaoʻao. Eia nō naʻe, he mea nui e hoʻomanaʻo e ʻokoʻa paha ke kākoʻo a me ka hoʻonohonoho ʻana o kēia mau modula ma muli o kāu kikowaena.

Laʻana o ka hoʻohana ʻana i ka 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>

Laʻana no 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>

Ua kūkākūkā mākou i nā kuhikuhi i hoʻohana pinepine ʻia. Hiki iā ʻoe ke hoʻomaʻamaʻa iā ʻoe iho me nā mana āpau o ka faila ma ka palapala mana.

Pehea e nānā ai i ka hana o ka faila .htaccess

No ka nānā ʻana inā e hana ana kāu faila .htaccess ma ka pūnaewele, hiki iā ʻoe ke hana i kēia mau hana:

  1. E hoʻololi i ka faila .htaccess me ka hewa. I ka pane ʻana, pono ke kikowaena e hāʻawi i kahi hewa. Hōʻike kēia ʻano hana inā hoʻohana maʻamau ka hana o ka faila ma ke kikowaena.
  2. E nānā i ka hana o nā hoʻololi kikoʻī āu i hana ai. No ka laʻana, e hana i kahi hoʻololi liʻiliʻi i kekahi o nā ʻāpana a nānā i ke ʻano o nā loli.
  3. E nānā i ke kūlana kūlana o ka ʻaoʻao inā pili nā hoʻololi i ka pane a ke kikowaena. Pehea e hana ai i kēia, ua wehewehe mua mākou ma ka ʻatikala HTTP Error Codes: he papa inoa piha o nā hewa kikowaena.
  4. E nānā i nā log server. Hōʻike lākou i nā hewa āpau e pili ana i ka hana o ka faila .htaccess.
  5. Hana i ka hoʻāʻo ʻana me ka hoʻohana ʻana i nā lawelawe pūnaewele a i ʻole nā ​​​​mea hana.

He mea nui e hoʻomaopopo i ka nānā ʻana i ka hana o ka faila .htaccess, ʻaʻole pono ʻoe e hana i nā ʻanuʻu āpau i ka manawa hoʻokahi. Ua lawa ke koho i ke ala kūpono loa mai ka papa inoa a hoʻohana.

Panina

ʻO ka hoʻonohonoho ʻana i ka faila .htaccess kahi hana koʻikoʻi i ka hoʻomaikaʻi ʻana a me ka pale ʻana i kāu kikowaena Apache. Ua ʻimi mākou pehea e kōkua ai kēia faila i ka hoʻokele ʻana i ka hoʻihoʻi ʻana, hoʻopaʻa i ka ʻike, a me ka palekana. Ke akamai ʻoe i ka hana ʻana me .htaccess, loaʻa iā ʻoe kahi mea hana ikaika no ka hoʻomaikaʻi ʻana i ka hana a me ka hana o nā pūnaewele.

❮ ʻatikala mua Hoʻonohonoho kikowaena FTP
ʻatikala aʻe ❯ Pehea e hoʻonohonoho ai i kahi kikowaena pūnaewele (Apache-PHP-MySQL/MariaDB) ma Linux

E nīnau iā mākou e pili ana iā VPS

Mākaukau mau mākou e pane i kāu mau nīnau i kēlā me kēia manawa o ke ao a i ka pō.