Старый 04.01.2011, 14:18   #1
mr.The
 
Аватар для mr.The
 
Регистрация: 05.07.2010
Сообщений: 73
Репутация: 16
Cool [Debian][WordPress] 404 После включения чпу[SOLVED]

Сразу говорю: ошибку выдаёт сам вордпресс, т.е. выглядит это как-то так: http://awesomescreenshot.com/0c15geya7 причём, прямо на главной.

Аналогичная проблема наблюдается со всеми сайтами на вп. Сам по себе мод_реврайт отлично работает и выглядит стандартно:
Цитата:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
Конфиг апача(ip заменён, лишние сайты вырезал): http://dl.dropbox.com/u/3662016/mrthe.name/apache2_.conf

Установленно:
Apache/2.2.9 (Debian) PHP/5.2.6-1+lenny9

Собственно проблема вылезла после переезда на другой сервер, установка чистого вордпресса не помогает.

Как это всё решить?
__________________
Бложек mr.The. :rolleyes:

Последний раз редактировалось mr.The; 04.01.2011 в 17:55.. Причина: SOLVED
mr.The вне форума   Ответить с цитированием
Старый 04.01.2011, 15:26   #2
POS_troi
 
Аватар для POS_troi
 
Регистрация: 06.07.2010
Сообщений: 98
Репутация: 35
По умолчанию

Заместь
Код:
RewriteBase /
попробуй
Код:
RewriteBase /mrthe.name
или вообще указать полный путь )
POS_troi вне форума   Ответить с цитированием
Старый 04.01.2011, 16:26   #3
mr.The
 
Аватар для mr.The
 
Регистрация: 05.07.2010
Сообщений: 73
Репутация: 16
По умолчанию

Полный путь не помогает, на главной по прежнему 404, на страницах вообще начал 500 выдавать.
__________________
Бложек mr.The. :rolleyes:
mr.The вне форума   Ответить с цитированием
Старый 04.01.2011, 17:54   #4
mr.The
 
Аватар для mr.The
 
Регистрация: 05.07.2010
Сообщений: 73
Репутация: 16
Cool

SOLVED!
После уже какого дня ковыряния сорцов оказалось, что глобальная переменная REQUEST_URI выдаёт полный путь, вместе с доменом.
В качестве временного решения юзаю:

PHP код:
$_SERVER['REQUEST_URI']=str_replace("http://".$_SERVER["HTTP_HOST"],"",$_SERVER['REQUEST_URI']);
$_SERVER['REQUEST_URI']=str_replace("https://".$_SERVER["HTTP_HOST"],"",$_SERVER['REQUEST_URI']); 
Остаётся вопрос, почему сервер отдаёт неправильное значение переменной.

Нашел даже баг в багтрекере вп: http://core.trac.wordpress.org/ticket/4732

Описание в бложеке: http://mrthe.name/2011/01/wordpress-...g-request_uri/
__________________
Бложек mr.The. :rolleyes:
mr.The вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход



Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd. Перевод: zCarot