htaccess в nginx

123
LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#11

Не знаю как, но сервис: http://winginx.ru/htaccess

Показывает:


# nginx configuration

location / {
if (!-e $request_filename){
rewrite ^/(.*[^/0-9]+)$ /$request_uri/ redirect;
}
if (!-e $request_filename){
rewrite (.*)$ /index.php/$1;
}
}
✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
siv1987
На сайте с 02.04.2009
Offline
427
#12
LEOnidUKG:
rewrite (.*)$ /index.php/$1;

Этот код без break вызовет зацикливание.

У ТСа судя по всему не срабатывает реврайт.

EW
На сайте с 22.04.2013
Offline
19
#13
@ya:
Из заголовка очевидно, что Nginx + php-fpm

Как видите это не совсем очевидно ;)

@ya:
Зачем Вам весь конфиг, если нужно сконвертить 1 правило?
Конфиг пустой и работает, аж главная страница открывается

Мне кажется что у вас что-то не так в основе раз понадобился такой реврайт, поэтому я и попросил конфиг. Перенаправление на index.php намного проще сделать без rewrite с помощью директивы try_files.

Посмотрите как это сделано в конфиге Nginx для Magento - https://github.com/magenx/nginx-config/blob/master/magento/nginx.conf

http://www.webhostingzone.org (http://www.webhostingzone.org) - хостинг в США, VPS сервера, Регистрация доменов, SSL сертификаты Посмотреть отзывы о WebHostingZone. (http://www.serchen.com/company/webhostingzone/)
@ya
На сайте с 17.04.2009
Offline
101
@ya
#14

try_files уже пробовал там выходит, что на всех страницах отдается содержимое главной.

Видимо rewrite не работает, но как его проверить и что с ним не так не знаю.

http://winginx.ru/htaccess на моей памяти еще ни разу рабочий конфиг не выдал :-)

siv1987
На сайте с 02.04.2009
Offline
427
#15

Да кстати, возможно придется определить REQUEST_URI так как он в данном случае не получается не как у апача а вместе с index.php/REQUEST_URI

@ya
На сайте с 17.04.2009
Offline
101
@ya
#16

Всем спасибо, но пока ничего не выходит. Утро вечера мудренее

@ya
На сайте с 17.04.2009
Offline
101
@ya
#17
siv1987:
Да кстати, возможно придется определить REQUEST_URI так как он в данном случае не получается не как у апача а вместе с index.php/REQUEST_URI

А можно немножко поподробней? ps уже много всего перепробовал результат не меняется

siv1987
На сайте с 02.04.2009
Offline
427
#18
@ya:
А можно немножко поподробней? ps уже много всего перепробовал результат не меняется

сделайте print_r($_SERVER); в index.php или на файл на который делается реврайт и посмотрите что у вас с путями.

@ya
На сайте с 17.04.2009
Offline
101
@ya
#19

Вот такое выдает при переходе на catalog

Array ( [USER] => svet [HOME] => /var/www/svet [FCGI_ROLE] => RESPONDER [QUERY_STRING] => [REQUEST_METHOD] => GET [CONTENT_TYPE] => [CONTENT_LENGTH] => [SCRIPT_FILENAME] => /var/www/svet/www/index.php [SCRIPT_NAME] => /catalog/ [REQUEST_URI] => /catalog/ [DOCUMENT_URI] => /catalog/ [DOCUMENT_ROOT] => /var/www/svet/www [SERVER_PROTOCOL] => HTTP/1.1 [GATEWAY_INTERFACE] => CGI/1.1 [SERVER_SOFTWARE] => nginx/1.2.7 [REMOTE_ADDR] => 50.50.1.201 [REMOTE_PORT] => 7757 [SERVER_ADDR] => 179.79.136.58 [SERVER_PORT] => 80 [SERVER_NAME] => site.ru [HTTPS] => [REDIRECT_STATUS] => 200 [HTTP_HOST] => site.ru [HTTP_USER_AGENT] => Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0 [HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 [HTTP_ACCEPT_LANGUAGE] => ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3 [HTTP_ACCEPT_ENCODING] => gzip, deflate [HTTP_REFERER] => http://site.ru/ [HTTP_COOKIE] => PHPSESSID=ciue9ul0oih07etghsv8q5kkj6 [HTTP_CONNECTION] => keep-alive [PHP_SELF] => /catalog/ [REQUEST_TIME] => 1369227304 )

Правило пока такое висит , тк оно хоть главную возвращает, чтоб посмотреть)

location / { try_files $uri $uri/ @fallback; }
location @fallback
{
fastcgi_pass backend-svet;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
}
siv1987
На сайте с 02.04.2009
Offline
427
#20

Должно работать. Попробуйте еще установить параметры SCRIPT_NAME, PHP_SELF

123

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий