location / { root /var/www/react; }
location / {
root /var/www/react;
try_files $uri $uri/ /index.html;
}
неправильно работает подгрузка static и media файлов django,
/var/www/...
?<VirtualHost *:80>
ServerName local.dev
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory "/var/www/html">
AllowOverride All
Options FollowSymLinks
Include custom.d/globalblacklist.conf
RewriteEngine on
RewriteCond %{ENV:HTTPS} !on
RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</Directory>
</VirtualHost>
<VirtualHost *:80>
<VirtualHost *:80>
Redirect 301 / https://site.ru/
<Directory "/var/www/html">
Include custom.d/globalblacklist.conf
</Directory>
</VirtualHost>
<VirtualHost *:80>
<Directory "/var/www/html">
Include custom.d/globalblacklist.conf
Redirect 301 / https://site.ru/
</Directory>
</VirtualHost>
(^/(test/[^/]+)/test2/$)
"^/(test/[^/]+)/test2/$"
if ( $request_uri ~ "^/(test/[^/]+)/test2/$" ) {
return 301 /$1/;
}
/test/name?lol/test2/
/test/name/test2/?lol
if ( $request_uri ~ "^/(test/[^/?]+)/test2/($|\?)" ) {
return 301 /$1/;
}
location ~ ^/(test/[^/]+)/test2/$
# в нижнем регистре
RewriteCond %{REQUEST_URI} [A-Z]
RewriteRule (.*) ${lc:$1} [R=301,L]
RewriteCond %{THE_REQUEST} ^\S+\s[^?\s]+(//|[A-Z]) [OR]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://site.ru/${lc:$1} [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[A-Z].*)$ https://site.ru/${lc:$1} [R=301,L]
RewriteCond %{THE_REQUEST} // [OR]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]
RewriteCond %{REQUEST_URI} !\.
RewriteRule ^(.*[A-Z].*)$ https://site.ru/${lc:$1} [R=301,L]
RewriteCond %{THE_REQUEST} // [OR]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]
[^.]*
применить вместо RewriteCond %{REQUEST_URI} !\.
RewriteRule ^([^.]*[A-Z][^.]*)$ https://site.ru/${lc:$1} [R=301,L]
RewriteCond %{THE_REQUEST} // [OR]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^(.*)$ https://site.ru/$1 [R=301,L]
FileName.jpg
и filename.jpg
это разные файлы./images/FileName.jpg
, то после редиректа с переводом в нижний регистр /images/filename.jpg
файл не будет найден и в итоге ошибка 404. <VirtualHost>
. На обычном виртуальном хостинге нет доступа к конфигам Apache. Так что это для VPS где есть root доступ.RewriteMap lowercase int:tolower
RewriteCond %{REQUEST_URI} !/$ [OR]
RewriteCond %{THE_REQUEST} ^\S+\s[^?\s]+(?://|--|[A-Z])
RewriteCond ${lowercase:$1} ^(.*-)-(.*)$|(.*)
RewriteRule ^([^.]+?)/?$ https://www.soskin.com.ua/%1%2%3/ [R=301,L]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* https://www.soskin.com.ua/$0 [R=301,L]
RewriteEngine on
RewriteRule ^???????? index.php [L,QSA]
^????????
. Это синтаксическая ошибка.$_SERVER['REQUEST_URI']
скрипт всегда получает адрес в первоначальном виде, а не результат преобразований RewriteRule.RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
$_SERVER['REDIRECT_URL']
. Предпоследним должно срабатывать как раз правило RewriteRule ^(.*)$ /catalog/all/ [NC,L]
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/catalog/$ [NC]
RewriteRule ^(.*)$ /catalog/all/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$
RewriteRule ^(.*)$ /bitrix/urlrewrite.php [L]
/catalog/
какой результат ожидаете?/catalog/all/
существующая папка со своим index.html или index.php./catalog/all/
не является физически существующей папкой, то запрос уходит в /bitrix/urlrewrite.php
. А там уже маршрутизацию нужно настраивать средствами самого битрикса а не .htaccess RewriteRule ^(.*)$ /catalog/all/ [NC]
[L]
так что обработка запроса не останавливается и другие правила могут что-нибудь поменять.location = my.jpg { ... } location ~ ^my\.jpg$ { ... }
/
, так что должно бытьlocation = /my.jpg {
...
}
location ~ ^/my\.jpg$ {
...
}
/django_static/
, а просто/static/
?Тогда, например, файл
/var/www/garagedoors/static/folder/file.jpeg
Как это выглядит в html коде?
src="/static/folder/file.jpeg"
Или
src="/folder/file.jpeg"
Или как-то иначе?