Сведения о вопросе

Drake

03:28, 10th August, 2020

Теги

Адаптация RewriteRule под nginx для движка SocialEngine

Просмотров: 347   Ответов: 2

Друзья, помогите. Пытаюсь запустить SocialEngine напрямую под nginx/php-fpm, без Apache. На вид три простых RewriteRule, но сижу уже второй час безуспешно туплю.

Вот, что в оригинале:

RewriteCond %{REQUEST_URI} /index\.php
RewriteRule (.*) index.php?rewrite=2 [L,QSA]

RewriteCond %{REQUEST_URI} /$
RewriteRule (.*) index.php?rewrite=1 [L,QSA]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?rewrite=1 [L,QSA]


Как это будет в конфиге nginx?
Больше всего вопросов вызывает ранее не знакомый мне флаг QSA. Чувствую, подвох где-то в нем.



  Сведения об ответе

FAriza

07:30, 3rd August, 2020

location /index.php {
rewrite ^(.*)$ /index.php?rewrite=2 last;
}
location / {
index = index.php?rewrite=1

if (!-e $request_filename) {
rewrite ^(.+)$ /index.php?rewrite=1 last;
}
}


  Сведения об ответе

DINO

10:21, 14th August, 2020

рекомендую обратиться в офф. рассылку nginx. Там вам профессионально подскажут (и даже напишут) самый оптимальный вариант. Бывает и Игорь собственноручно. Зачастую от монстровых реврайтов с регэкспами остается всего парочка простых location'ов.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться