LINUX.ORG.RU

История изменений

Исправление frozen_twilight, (текущая версия) :

Мысля в категориях mod_rewrite ты конвертировал правила слишком буквально, к тому же добавил избыточности.

Чему равнозначны типовые конструкции

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?do=$1 [L,QSA]
написано в справке по try_files.

Ну а обычные замены вроде

RewriteRule ^page/(.*).html$ index.php?do=page&id=$1 [L]

это совсем уж трививально: http://wiki.nginx.org/HttpRewriteModule#rewrite Груду location'ов плодить не нужно, всех прописать на уровне server или внутри «location /».

Правда из исходных данных совершенно не понятно, каким образом у тебя выполняются PHP скрипты (полагаю, всё так же через Apache), так что скорее всего в конфигурации виртуалхоста будут ещё правила для них. Впрочем, если используется ISPmanager, то он должен в nginx.conf добавлять виртуалхосты по собственному шаблону.

Исходная версия frozen_twilight, :

Мысля в категориях mod_rewrite ты конвертировал правила слишком буквально, к тому же добавил избыточности.

Чему равнозначны типовые конструкции

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?do=$1 [L,QSA]
написано в справке по try_files.

Ну а обычные замены вроде

RewriteRule ^page/(.*).html$ index.php?do=page&id=$1 [L]

это совсем уж трививально: http://wiki.nginx.org/HttpRewriteModule#rewrite Груду location'ов плодить не нужно, всех прописать на уровне server или внутри «location /».

Правда из исходных данных совершенно не понятно, каким образом у тебя выполняются PHP скрипты в Nginx, так что скорее всего в конфигурации виртуалхоста будут ещё правила для них. Впрочем, если используется ISPmanager, то он должен в nginx.conf добавлять виртуалхосты по собственному шаблону.