Welcome! Log In Create A New Profile

Advanced

Re: .htaccess to nginx

Maxim Dounin
July 23, 2014 08:06AM
Hello!

On Tue, Jul 22, 2014 at 05:37:14PM -0400, Kradllit wrote:

> Здравствуйте. Необходимо перенести сайт с Apache на NGINX, но после переноса
> на NGINX не открываются страницы.
> В файле .htaccess находится правило:
>
> RewriteEngine on
> RewriteCond $1 !^(index.php|resources|robots.txt)
> RewriteCond %{REQUEST_FILENAME} !-f
> RewriteCond %{REQUEST_FILENAME} !-d
> RewriteRule ^(.*)$ index.php/$1 [L,QSA]
>
> С помощью онлайн конвертора
> http://www.anilcetin.com/convert-apache-htaccess-to-nginx/
> Получил такой выход:
>
> if ($1 !~ "^(index.php|resources|robots.txt)"){
> set $rule_0 1$rule_0;
> }
> if (!-f $request_filename){
> set $rule_0 2$rule_0;
> }
> if (!-d $request_filename){
> set $rule_0 3$rule_0;
> }
> if ($rule_0 = "321"){
> rewrite ^/(.*)$ /index.php/$1 last;
> }
>
>
> Но при обновлении конфигурации получаю ошибку:
> nginx: [emerg] unknown "1" variable

Не надо пользоваться "онлайн конверторами" - они делают
механическое преобразование и не оборудованы системой понимания
того, что они делают. На выходе - в лучшем случае крайне
неоптимальный конфиг, в худшем - полный мусор, если задача вышла
за те параметры, которым соответствующий конвертер обучен. В
данном случае проблема в том, что RewriteCond умеет ссылаться на
выделения из rewrite'а, в то время как "онлайн конвертор" про это
не знает и специально обрабатывать не умеет.

Правильный путь - понять, что делает соответствующее правило с
логической точки зрения, и написать то же самое с помощью средств,
предоставляемых nginx.

http://nginx.org/en/docs/http/converting_rewrite_rules.html

--
Maxim Dounin
http://nginx.org/

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

.htaccess to nginx

Kradllit July 22, 2014 05:37PM

Re: .htaccess to nginx

Maxim Dounin July 23, 2014 08:06AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 225
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready