Действия

Htaccess rewrites

Материал из lulzette's wiki

regular

www->!www + http->https

#redirect www+https
RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC]
RewriteRule ^(.*)$ https://domain.com/$1 [R=301,L]
RewriteCond %{HTTP:X-HTTPS} !1
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]


docs

RewriteCond

http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#RewriteCond
https://web-optimizator.com/301-redirekt-htaccess/

RewriteCond *условие* *шаблон*

Частые:

  • HTTP_HOST - очевидно (хост, к которому идет обращение)
  • HTTP:X-HTTPS - true (1) если https
  • REQUEST_URI - путь (URI)
  • QUERY_STRING - параметры (к php скрипту, например)

RewriteBase

http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewritebase
Путь, относительно которого следует применять правила

RewriteRule

RewriteRule Что На_что [Флаги]

http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriterule
https://simonecarletti.com/blog/2009/01/apache-rewriterule-and-query-string/
Собсна указание, что на что заменить.

Флаги

  • NC - не чувствителен к регистру
  • QSA - добавлять QUERY_STRING к концу RewriteRule
  • R[=code] - код редиректа
  • L - указание, что RewriteRule - последний, после него правила не выполняются
  • F - 403 forbidden