jkm

Рейтинг
120
Регистрация
20.02.2014
RewriteCond %{THE_REQUEST} " /(picture\?/\d+)/"
RewriteRule ^  https://demo1.piwigo.com/%1 [R=301,L]


Или так

RewriteCond %{QUERY_STRING} ^(/\d+)/
RewriteRule ^picture$  https://demo1.piwigo.com/$0?%1 [R=301,L]
RewriteCond %{DOCUMENT_ROOT}/category/$0 -f
RewriteRule ^.+\.docx$ /category/$0 [L]

Mister_Black #:

Как сделать редирект с /?s=\ на /
Нужно запретить обратный слэш для поиска

Пробовал делать так
Redirect 301 /?s=\ /
и так
RedirectMatch 301 /?s=\(.*) //$1

оба варианта не работают, второй вообще 500 ошибку даёт

RewriteCond %{QUERY_STRING} (?:^|&)s=[^&]*(?i:\\|%5c)
RewriteRule ^ /? [R=301,L]
Только зачем это делать в .htaccess, а не в php проверить $_GET['s'] с помощью strpos?
Чтоб не пропускало 0 и 00 нужно \d{1,2} заменить на [1-9]\d?
location ~ ^/folder/.+\.php$ {
    # PHP 7.4
}

location ~ \.php$ {
    # PHP 5.6
}

Или

location /folder/ {
    try_files $uri $uri/ /folder/index.php$is_args$args;
    
    location ~ \.php$ {
        # PHP 7.4
    }
}

location ~ \.php$ {
    # PHP 5.6
}
RewriteRule ^screens2/(.+\.jpg)$ /screens/$1 [L]

Шаров Александр #:

К сожалению, такая комбинация дает ошибку 500

Там лишний пробел между ^ и administrator.

Ещё вариант просто поменять
RewriteCond %{HTTP_HOST} (.*)
RewriteCond %{REQUEST_URI} /$ [NC]

На
RewriteCond %{REQUEST_FILENAME} !-d

#Удаление слеш в конце URL
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ $1 [L,R=301]
sochi-russia #:
сделать редирект, чтобы при переходе по ссылке https://site.ru/papka/index.php переадресовывало на https://site.ru/papka/

Файл /papka/.htaccess

RewriteEngine On

RewriteCond %{THE_REQUEST} " /papka/index\.php"
RewriteRule ^ https://site.ru/papka/ [R=301,L]
Всего: 749