Կարգավորում .htaccess

Ֆայլը .htaccess է конфигурационным ֆայլը Apache. Այն թույլ է տալիս ուղղել արձագանք սերվերի հարցումներին օգտվողին ստեղծել caching եւ սեղմում, ինչպես նաև տարանջատել մուտք տարբեր բաժինների կայքի,

Հնարավորությունները, որոնք տրամադրում է htaccess համար սերվերի կոնֆիգուրացիայի չափազանց մեծ է, որպեսզի տեղավորել մեկ հոդվածում, բայց մենք չենք պատրաստվում դիտարկել բոլոր նրբությունները կազմաձեւման Apache, իսկ դիտարկենք միայն հիմնական պարամետրեր .htaccess նվազեցնել կրկնօրինակների էջերի կայքում:


Նախ, կայքում առկա կրկնօրինակը գլխավոր հայելիներ, կայքը բացվում է որպես www, այնպես էլ առանց դրա:

Գործերի նման վիճակը վատ է որ:

  • Շփոթում է օգտագործողի վերաբերյալ ճշտության կայքի անվանումից
  • Վատացնում запоминание կայքի անվանումը օգտագործողի
  • Խանգարում է որոնողական ռոբոտների համար համարժեք ընկալել էջ: կայքի (որոնողական ռոբոտներ են համարում էջերը www և առանց www տարբեր են, իսկ բովանդակությունը նրանց дублируемым)

Ազատվելու համար կրկնօրինակի գլխավոր հայելիներ,.htaccess անհրաժեշտ է ամենախայտառակ:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^crazysquirrel\.ru$ [NC]
RewriteRule ^(.*)$ https://crazysquirrel.ru/$1 [R=301,L]

Կսմթել որպես հիմնական հայելիներ կայքի անունը առանց www

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.crazysquirrel\.ru$ [NC]
RewriteRule ^(.*)$ https://www.crazysquirrel.ru/$1 [R=301,L]

Կսմթել որպես հիմնական հայելիներ անվանման հետ www


Երկրորդ, կայքում կան կրկնօրինակը գլխամասային ֆայլի կայքի (index.html, index.php և այլն)

Գործերի նման վիճակը վատ է որ:

  • Վատացնում տեսարան հիմնական էջերը կայքի (շատ ավելի հաճելի է տեսնել անունը կայքից առանց index քան փողի)
  • Խանգարում է որոնողական ռոբոտների համար համարժեք ընկալել էջ: կայքի (որոնողական ռոբոտներ են համարում կայքի հասցե հետ index-եւ առանց նրա, թե ինչպես են տարբեր էջերը, իսկ բովանդակությունը նրանց дублируемым)

Ազատվելու համար կրկնօրինակների գլխամասային ֆայլի կայքի անհրաժեշտ է ամենախայտառակ .htaccess:

RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ https://crazysquirrel.ru/$1 [R=301,L]

Երրորդ, կրկնօրինակներ ՍՏԱՆԱԼ (պարամետրերի փոխանցվող url նշանից հետո ?)

Գործերի նման վիճակը վատ է որ:

  • Վատացնում տեսարան հիմնական էջերը կայքի (շատ ավելի հաճելի է տեսնել URL առանց GET պարամետրերի քան փողի)
  • Խանգարում է որոնողական ռոբոտների համար համարժեք ընկալել էջ: կայքի (որոնողական ռոբոտներ են համարում կայքի հասցե հետ ՍՏԱՆԱԼ առանց նրա, ինչպես տարբեր էջերը, իսկ բովանդակությունը նրանց дублируемым)

Ազատվելու համար կրկնօրինակներ ՍՏԱՆԱԼ անհրաժեշտ ամենախայտառակ .htaccess:

RewriteEngine on
RewriteCond %{QUERY_STRING} !^$ [NC]
RewriteCond %{THE_REQUEST} \? [NC]
RewriteCond %{THE_REQUEST} !admin [NC]
RewriteRule ^(.*)?(.*)$ https://crazysquirrel.ru/$1? [R=301,L]

Ընդհանուր կանոն ազատվելու համար կրկնօրինակներ:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^crazysquirrel\.ru$ [NC]
RewriteRule ^(.*)$ https://crazysquirrel.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ https://crazysquirrel.ru/$1 [R=301,L]
RewriteCond %{QUERY_STRING} !^$ [NC]
RewriteCond %{THE_REQUEST} \? [NC]
RewriteCond %{THE_REQUEST} !admin [NC]
RewriteRule ^(.*)?(.*)$ https://crazysquirrel.ru/$1? [R=301,L]

Տվյալ configurations:

  • RewriteEngine on — հրահանգը/անջատելու մեխանիզմի վերափոխումը (գրվում է մի ամբողջ htaccess)
  • RewriteCond %{HTTP_HOST} !^crazysquirrel\.ru$ [NC] սահմանումը պայմանները կիրառելու համար դարձի միայն անվանումներին կայքը, մեծ ցանկալի
  • RewriteRule ^(.*)$https://crazysquirrel.ru/$1[R=301,L] — մեխանիզմը վերափոխման перенаправляющий օգտվողին "ճիշտ անունը կայքից"
  • RewriteCond %{QUERY_STRING} !^$ [NC] — սահմանում է պայման կիրառման դարձի միայն հասցեներով որոնք ունեն GET տարբերակները
  • RewriteCond %{THE_REQUEST} \? [NC] — սահմանում է պայման դարձի միայն հասցեներ ունեցող ?
  • RewriteCond %{THE_REQUEST} !admin [NC] — սահմանում է կանոններ դարձի համար հասցեները չունեցող իր կազմում дирректории կամ ֆայլը վարչական վահանակի կայքում (եթե կայքում չկա CMS կամ աշխատելու համար պահանջվում GET պարամետրերը, այդ տեղը կարելի է գրել)
  • crazysquirrel.hy — կայքի անվանումը
  • admin — директория վարչական վահանակի կայքը
  • index.php — ի գլխավոր ֆայլը կայքը
  • R=301 — դրոշը սահմանող կոդ վիճակի http համար սխալ կայքի (301 — դրոշը մշտական փոփոխության հասցեներ)
  • L ' դրոշը, նշելով, որ տվյալ կանոն վերջին
  • NC — դրոշը, նշելով, որ այդ կանոնները ոչ թե կարևոր է գրանցվել գրելու
Տեսնել և թողնել մեկնաբանություններ