@JohnDidact
Нуб во всём

Почему RewriteRule не отрабатывает в Litespeed?

Собственно, вопрос в шапке… На Apache (open server) всё отрабатывает хорошо. А на Litespeed — нет… Именно, не срабатывает правило для "список постов социальных сетей" (последние два правила). При этом, некоторые правила отрабатывают и на Litespeed. Например, "запрет на просмотр рабочих папок". Вот содержимое .htaccess
php_value date.timezone 'UTC'
# Кодировка:
AddDefaultCharset UTF-8
php_value default_charset UTF-8
# Индексный файл в папке:
DirectoryIndex index.php
#Options -Indexes
# Ответ об ошибке:
ErrorDocument 404 /?err=404
ErrorDocument 403 /?err=403

# Тип документа по умолчанию - HTML:
php_value default_mimetype text/html

# User-Agent:
php_value user_agent 'Mozilla/5.0 (compatible; JohnDidact; +http://site/about/bot.php)'

# Показываем все ошибки:
php_value error_reporting 32767
php_value log_errors 1
php_value error_log '__ERR__/error.txt'
php_value ignore_repeated_errors 1
php_value ignore_repeated_source 0

# Настройки сессий:
## Метод сериализации данных:
php_value session.serialize_handler 'php_serialize'
## Время жизни сессий - примерно неделя:
php_value session.gc_maxlifetime 604800
## Строгая проверка:
php_value session.use_strict_mode 1
## Не запускать сессии автоматически:
php_value session.auto_start 0
## Время жизни куки - примерно год:
php_value session.cookie_lifetime 31622400
## Где активны куки:
php_value session.cookie_path "/"
## Где активны куки:
php_value session.cookie_domain "site"
## Использовать только cookies для хранения идентификатора сессии
php_value session.use_only_cookies 1
## Куки передавать только по защищёному соединению
php_value session.cookie_secure 1
## Разрешаю передавать куки между сайтами
php_value session.cookie_samesite "Lax"
## Имя сессии состоит из 0-9, a-z, A-Z, "-", ","
php_value session.hash_bits_per_character 6
## Имя сессии хэшируется функцией SHA-1
php_value session.hash_function 1
## Сбощик мусора отключен
php_value session.gc_probability 0

# Корректировка URL:
RewriteEngine on
RewriteRule .htaccess - [F]
## Перенаправление с www на основной домен:
RewriteCond %{HTTP_HOST} ^.+\.site\.(social|life)$
RewriteRule .* https://rud.social%{REQUEST_URI} [L,R=301]
## Перенаправление с HTTP на HTTPS:
RewriteCond %{HTTPS} ^(off|0)|$
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
## Запрет на просмотр рабочих категорий:
RewriteRule ^__.+__(/.*)?$ - [F,L]
## Список постов социальных сетей:
RewriteCond %{REQUEST_URI} ^/sn/posts(.*[^/])?$
RewriteRule .* https://%{HTTP_HOST}/sn/posts%1/ [L, R=301]
RewriteRule ^sn/posts(/([0-9]+)?(-(0|1))?)?/$ sn_posts.php?startId=$2&desc=$4 [L]
  • Вопрос задан
  • 164 просмотра
Решения вопроса 1
@JohnDidact Автор вопроса
Нуб во всём
Проблема была в строке RewriteCond %{HTTP:X-Forwarded-Proto} !https
Apache отрабатывает её, как надо, а Litespeed вообще не признаёт.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы