RewriteCond %{DOCUMENT_ROOT}/html/$1.html -f
RewriteRule ^([^/]+)$ /html/$1.html [L]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
RewriteCond %{REQUEST_URI} ^\/$
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} \/$
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)\/$ http://%1/$1 [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} !\/$
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
RewriteCond %{REQUEST_URI} !\?
RewriteCond %{REQUEST_URI} !\&
RewriteCond %{REQUEST_URI} !\=
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_URI} \/$
RewriteCond %{HTTP_HOST} ^([^www].*)$
RewriteRule ^(.*)\/$ http://%1/$1 [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{HTTP_HOST} ^(?:www\.|)(.+) [NC]
RewriteRule ^(.*)/$ http://%1/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
DirectorySlash Off
<base>
htmlbook.ru/html/base RewriteEngine On
RewriteRule ^(learn-html5)/(basic|overview)$ /$1/lesson/index.php?id=$2 [L]
RewriteCond %{QUERY_STRING} ^BlogPostSearch(?i:%5B|\[)theme_id(?i:%5D|\])=1$
RewriteRule ^blog/index$ https://mirtreiderov.ru/blog/theme/finanasovie-novosti? [R=301,L]
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^blog/index$ https://mirtreiderov.ru/blog [R=301,L]
Redirect 301 /blog/index /blog
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]{0,7})$ /go?id=$1 [L]
IndexIgnore .* *.php *.zip css js fonts img
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/myFolder/(css|js|fonts|img)/(.*)$ [NC]
RewriteRule ^ /myFolder/.%1/%2 [QSA,L]
1. Редирект на https;
2. Редирект на без www + без повторяющихся слешей;
RewriteCond %{THE_REQUEST} // [OR]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} // [OR]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.|)(.+) [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
[OR]
RewriteCond %{HTTPS};%{HTTP_HOST};%{THE_REQUEST} !^on;(?!www\.)[^;]+;(?!.*//) [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.|)(.+) [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
RewriteCond %{HTTP_HOST};%{HTTPS};%{THE_REQUEST} ^(?=(?:www\.|)([^;]+))(?!(?!www\.)[^;]+;on;(?!.*//)) [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
Первому RewriteRule передается путь от того места, где находится .htaccess, до запрошенного файла.
^test/(first|second|third)$
должно быть ^(first|second|third)$
<VirtualHost>
, а в .htaccess запрос будет проходить через все RewriteRule снова и снова, до тех пор, пока он не перестанет меняться.RewriteEngine On
RewriteRule ^(first|second|third)$ index.html [END]
RewriteRule ^(.+)$ 404.html [END]
RedirectMatch 301 ^/(.*)\+$ /$1
RewriteEngine On
RewriteRule ^(.*)\+$ /$1 [R=301,L]
RewriteRule ^brands/ https://new-site.ru/manufacturers? [L,R=301]
<VirtualHost 127.0.0.1:8080>
ServerName www.site.ru
Redirect / http://site.ru/
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
ServerName site.ru
DocumentRoot /SOME_PATH/site/site.ru/www
...
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
ServerName site.ru
ServerAlias *.site.ru
VirtualDocumentRoot /SOME_PATH/site/site.ru/%1
...
RedirectMatch 301 ^/link /page
RewriteEngine On
RewriteRule ^link /page [R=301,L]
RewriteEngine On
RewriteCond %{THE_REQUEST} " /(pages/|[^?]*\.php)" [OR]
RewriteCond %{SERVER_PORT} !443 [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(pages/|)(.*?)(\.php|$) https://site.ru/$2 [R=301,L]
RewriteCond %{DOCUMENT_ROOT}/pages/$1.php -f
RewriteRule ^(.*)$ pages/$1.php [L,QSA]