Проблема с ЧПУ

Различные вопросы по установке и настройке фреймворка, конфигурции веб-сервера и IDE.
Ответить
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Проблема с ЧПУ

Сообщение Ozzy »

После переноса сайта на другой хост и на новую версию пхп - перестал работать сайт как таковой ) При переходе по ссылкам http://www.site.ru/page/1/ http://www.site.ru/page/2/ и тп - ноль реакции. Отображается исключительно главная страница и это понятно почему:

внутри контроллера идет проверка на $_GET['page'] и если он пустой - выводим главную, если заполненный - конкретную страницу. вопрос достаточно простой, почему $_GET может быть пустым? :) htaccess используется стандартный для примера yii-блога

5.3.3-7+squeeze7
Мой маленький блог - http://dbhelp.ru
esche
Сообщения: 1054
Зарегистрирован: 2010.11.24, 03:39

Re: Проблема с ЧПУ

Сообщение esche »

Эм.. а сервер apache? :)
что говорит var_dump( $_GET).. а если "нормальной" строкой передавать. /?blabla=1
QSA флаг на строку влиять может..
...
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: Проблема с ЧПУ

Сообщение Ozzy »

Сервер апач
В вардамп пусто конечно же, я ж написал выше что GET пустой
если добавлять blabla=1 - тогда в GET идет blabla нормально
Мой маленький блог - http://dbhelp.ru
esche
Сообщения: 1054
Зарегистрирован: 2010.11.24, 03:39

Re: Проблема с ЧПУ

Сообщение esche »

Ozzy писал(а):В вардамп пусто конечно же, я ж написал выше что GET пустой
Я вычитал только что $_GET['page'] пустой.. Переход к $_GET был как-то не слишком явно :)

QSA - имелось ввиду Query String Append, но видимо, дело не в этом.

Код: Выделить всё

Rewrite Rule ... [QSA]
.htaccess ведь такой -> http://yiiframework.ru/doc/guide/ru/qui ... inx-config ?

А можно конфиг UrlManager-а?
...
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: Проблема с ЧПУ

Сообщение Ozzy »

Тут не может быть дело в UrlManager-е т.к. сайт работает в аналогичной настройке на другом хостенге без проблем. htaccess используется стандартный который по ссылке.

Код: Выделить всё

	    'urlManager'=>array(
            'urlFormat'=>'path',
            'rules'=>array(
				'<language>/books/' => 'post/empty',
				'uo/' => 'post/uo',
				'/u/<url>'=>'url/index',
				'<url>/page/'=>'post/list',
				'vote/<url>/'=>'post/vote',
				'/category/<url>'=>'post/index',
				'/category/'=>'post/index',
				'/get/<id>'=>'post/get',
				'robots.txt' => 'post/empty',
            ),
        ),    
Мой маленький блог - http://dbhelp.ru
Аватара пользователя
andy_s
Сообщения: 127
Зарегистрирован: 2012.01.22, 13:15

Re: Проблема с ЧПУ

Сообщение andy_s »

Попробуйте различные варианты файла .htaccess. Примеры тут: http://www.yiiframework.com/wiki/214/ur ... index-php/ и тут: http://www.yiiframework.com/forum/index ... -htaccess/

Неплохо было бы убедиться, что и сам mod_rewrite работает должным образом на каких-нибудь простых примерах (без yii).
esche
Сообщения: 1054
Зарегистрирован: 2010.11.24, 03:39

Re: Проблема с ЧПУ

Сообщение esche »

Ozzy писал(а):Тут не может быть дело в UrlManager-е т.к. сайт работает в аналогичной настройке на другом хостенге без проблем. htaccess используется стандартный который по ссылке.
Я иногда в зависимости от окружения (IP, HOST) подключаю разные конфиги.. правда, к роутингу они не относятся.. Вопрос скорее к этому был :)
А по логам CUrlManager отрабатывает?
Ну и после проверок, рекомендованных andy_s разве что $_SERVER проверить.. вдруг туда чего не передаётся..
p.s. В курсе, что не сторонник, но как раз пример ситуации, когда дебаггер бы помог ;)
...
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: Проблема с ЧПУ

Сообщение Ozzy »

Ну mod_rewrite само собой работает т.к. урлы localhost/site/test не жалуется на ошибку такой страницы, а нормально перенаправляет в нужный контроллер. Другое дело что site/test/id/1 не передает в get нужный параметр и следовательно нет параметров с которыми можно было бы работать ))

разные варианты конфигов так же пробовл. явно где то косяк в настройке сервера вот тогда где хз. Даже Suhosin отрубил т.к. читал что он может урлы резать и тп - и результата ноль
Мой маленький блог - http://dbhelp.ru
Аватара пользователя
andy_s
Сообщения: 127
Зарегистрирован: 2012.01.22, 13:15

Re: Проблема с ЧПУ

Сообщение andy_s »

Кстати, а где "showScriptName"=>false в настройках urlManager'а?
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: Проблема с ЧПУ

Сообщение Ozzy »

andy_s писал(а):Кстати, а где "showScriptName"=>false в настройках urlManager'а?
Добавил, результатов нет.

Кстати http://www.localhost.ru/index.php?r=controller/action тоже никуда не переводит и не кидает в ожидаемое место. Конфиг приложения yii точно кушает т.к. там же данные конекта к базе и посты на главной отлично выводятся
Мой маленький блог - http://dbhelp.ru
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: Проблема с ЧПУ

Сообщение Ozzy »

Если меняю RewriteRule ^(.*)\?*$ index.php/$1 [L,QSA]
на RewriteRule ^(.*)\?*$ index.php/?a=$1 [L,QSA]

то в $_GET['a'] приходит catalog/test
Мой маленький блог - http://dbhelp.ru
Аватара пользователя
Ozzy
Сообщения: 269
Зарегистрирован: 2009.04.02, 15:09
Откуда: Украина, Одесса

Re: Проблема с ЧПУ

Сообщение Ozzy »

Проблема решена, спасибо тем кто предложил вариант с разным htaccess. Оказывается

Код: Выделить всё

RewriteEngine on

# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# otherwise forward it to index.php
RewriteRule . index.php
не работает, а вот древний вариант:

Код: Выделить всё

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?*$ index.php/$1 [L,QSA] 
работает как надо
Мой маленький блог - http://dbhelp.ru
Аватара пользователя
andy_s
Сообщения: 127
Зарегистрирован: 2012.01.22, 13:15

Re: Проблема с ЧПУ

Сообщение andy_s »

Будем знать :)
esche
Сообщения: 1054
Зарегистрирован: 2010.11.24, 03:39

Re: Проблема с ЧПУ

Сообщение esche »

Ozzy писал(а):Проблема решена, спасибо тем кто предложил вариант с разным htaccess. Оказывается
Попробуй в исходный (от блога) просто [QSA] дописать в последнюю строчку
...
Ответить