Просмотр полной версии : typo3 + nginx + rewrite
Подсобите с настройкой.
В typo3 рабочий для apache realurl.
В конфиге nginx:
rewrite ^(.*) /index.php?id=$1;
Однако "красивые" ссылки не работают. Где я не прав?
AleXUnder
14.06.2007, 11:44
а что в Setup у вас?
В Setup:
config.baseURL = http://url/
config.tx_realurl_enable = 1
config.uniqueLinkVars = 1
config.linkVars = L
В localconf:
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(
'fileName' => array (
'index' => array(
'index.html' => array(
'keyValues' => array(
)
),
),
),
'fileName' => array(
'index' => array(
'sitemap.xml' => array(
'keyValues' => array(
'type' => '999',
),
),
),
),
);
На апаче бегает, на nginx что-то видимо я не так пишу.
Pavel Antonov
14.06.2007, 15:32
Подсобите с настройкой.
В typo3 рабочий для apache realurl.
В конфиге nginx:
rewrite ^(.*) /index.php?id=$1;
Однако "красивые" ссылки не работают. Где я не прав?
Посмотрите конфиг RealURL (.htaccess). Все работает совсем не так. Ваша конфигурация для rewriting-а не верная:
выполняется редирект просто на index.php, а все параметры вычиляются RealURL по URL запросу, а не передаются через id.
Valery Romanchev
14.06.2007, 16:11
Подсобите с настройкой.
В typo3 рабочий для apache realurl.
В конфиге nginx:
rewrite ^(.*) /index.php?id=$1;
Однако "красивые" ссылки не работают. Где я не прав?
посмотрите .htaccess который лежит в дистрибутиве TYPO3 в корне
так есть правильный код рерайтинга для Apache.. для nginx нужно, ясное дело, писать аналогичный код
Преобразовал в nginx.conf:
rewrite .* /index.php last;
if (!-f $request_filename) {
rewrite .* /index.php last;
}
if (!-d $request_filename) {
rewrite .* /index.php last;
}
if (!-e $request_filename) {
rewrite .* /index.php last;
}
Преобразовал согласно мануалу. Но не работает. Я опять неправ? Как побороть?
Pavel Antonov
14.06.2007, 18:45
Преобразовал в nginx.conf:
rewrite .* /index.php last;
if (!-f $request_filename) {
rewrite .* /index.php last;
}
if (!-d $request_filename) {
rewrite .* /index.php last;
}
if (!-e $request_filename) {
rewrite .* /index.php last;
}
Преобразовал согласно мануалу. Но не работает. Я опять неправ? Как побороть?
Я конечно не знаком с rewrite под ngnix, но похоже написано что то странное... разве дальше первой комманды что то будет выполняться?
А как там вообще подключен PHP? через FastCGI?
Pavel Antonov
14.06.2007, 20:07
Именно, fastcgi.
А тогда закономерный вопрос: передается ли в FastCGI оригинальный URL при использовании rewrite?
Если его не видит RealURL, то ничего работать не будет.
Попробуйте посмотреть что в приходит в TYPO3.
А где можно посмотреть что в typo3 приходит?
Может кто-нить покажет свой вариант для nginx?
Pavel Antonov
15.06.2007, 04:01
А где можно посмотреть что в typo3 приходит?
Может кто-нить покажет свой вариант для nginx?
в самой TYPO3 и смотреть... ручками и дебаг-ом
... а ну голову еще обязательно! :D
Ага, ida на него настравить. :)
Все. Разобрался.
Покажите как разобрались. А еще лучше создайте страницу http://wiki.typo3.biz/ext:realurl:nginx и опишите там ваш конфиг.
Хотел было написать, но у меня нет прав для wiki.
Используйте логин и пароль от форума для авторизации в вики.
Valery Romanchev
19.06.2007, 21:09
Хотел было написать, но у меня нет прав для wiki.
если напишите - это будет многим полезно - тут у многих свои серверы под тайпо3.
nginx позволяет сильно улучшить ситуацию...
Ну а если и апач получится выбросить, то будет совсем хорошо :)
http://wiki.typo3.biz/ext:realurl:nginx
Создал. Оценивайте.
Апач можно выкинуть ;)
Pavel Antonov
28.06.2007, 00:20
Спасибо огромное!
В wiki -- (двойной дефис) получается одинарным, пробовал и двумя пробелами выделять. Как побороть?
Отключил типографику... Вроде всё нормально стало.
Pavel Antonov
28.06.2007, 15:09
Кстати вопросы по ngnix:
Зачем запускать два процесса PHP-FastCGI если ngnix все равно обрабатывает все в один поток?
Прирост скорости и производительности на статике общеищветсный факт, но вот стоит ли ставить ngnix на TYPO3? Мерилась ли производительность в сравнении с apache? Обычно все таки встречается связка Apache, PHP + ngnix. Ведь как не крути, самое тонкое место в этой связке TYPO3 (PHP) и возможно такая ситуация что при работе оператора в BE сайт может быть периодически не доступен (из-за однопоточности ngnix).
Работает на vBulletin® версия 3.8.1. Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot