Re: Вопрос по логике нахождения файла для выполнения

Sergey Shepelev temotor at gmail.com
Thu Jul 12 20:10:49 MSD 2007


Здравствуйте (Hello).

(Предыдущее письмо отправлено случайно)

Столкнулся с таким при настройке WordPress, там тоже есть вариант
уродских ссылок http://file/param

Возможность реализации:
rewrite ^http://domain/(file)/(param)/ /file;
set $php_param $2;
fastcgi_param SERVER_URI file?$php_param;
что-то примерно такое. Смысл в том, чтобы сделать внутренний редирект
на file, он обработается в соответствии с его location, а к нему
добавить нужный параметр для PHP. Здесь еще нужно учесть 2 момента:
нельзя сделать реврайт на file?param
if нужно избегать © Игорь (наверное, потому что он ресурсоемкий), т.е.
вместо if какой-нить хитрый локейшн.

Но это все ерунда, гораздо лучше перейти на нормальные URI типа
file?param, по стандарту.

-- 
С уважением (Best regards),
 Шепелев Сергей Александрович
 (Sergey A. Shepelev).

--
История переписки (conversation history):

> Интересует следующая функциональность и возможность ее реализации:

> Логика апача:
> запрашиваемая URL'а:

> http://domain/file/param/

> Например:

> http://domain/c/abc-def-ghi/

> Апач находит файл "c", смотрит в .htaccess, а там указано:

> <Files c>
> ForceType application/x-httpd-php
> </Files>

> Апач обрабатывает файл "c" как PHP.

> Логика Nginx'а:

> запрашиваемая URL'а:

> http://domain/file/param/

> Например:

> http://domain/c/abc-def-ghi/

> Nginx не находит директории и выдает ошибку:

> 2007/07/12 09:49:58 [error] 15109#0: *1
> "/var/www/nginx/domain.com/c/abc-def-ghi/index.php" is not found (20: Not a directory)

> Как заставить это дело обрабатываться скриптом "c" а не читать директорию?






More information about the nginx-ru mailing list