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) если httpsREQUEST_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 к концу RewriteRuleR[=code]
- код редиректаL
- указание, что RewriteRule - последний, после него правила не выполняютсяF
- 403 forbidden