Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вопрос по mod rewrite 
:(
    Опции темы
alexandrnv
Дата 26.8.2009, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 4.10.2008

Репутация: нет
Всего: нет



Добрый день.
Подскажите пожалуйста, как реализовать такое с помощью mod_rewrite:
нужно чтобы при обращении к любой страничке с сайта перенаправляло на index.php?q=ПЕРВОНАЧАЛЬНЫЙ_УРЛ.
Например, запрашиваем http://mysite.ru/folder/page.html - а вместо этого открывался http://mysite.ru/index.php?q=folder/page.html

Пробовал сделать так:
RewriteRule ^(.*)$ index.php?q=$1 [L]
Но не работает. Перенаправляет на index.php, но $_GET['q'] всегда равно "index.php" какой бы не был запрос.
Подскажите, пожалуйста, такое вообще можно сделать в mod_rewrite?

Заранее спасибо.
PM MAIL   Вверх
alexandrnv
Дата 27.8.2009, 08:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 4.10.2008

Репутация: нет
Всего: нет



Возник ещё такой вопрос:

# вот, например, правило, которое изменяет адрес на стороне сервера только если запрашиваемый адрес - не папка и не файл (то есть, 404). 
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /test.php?p=$1 [L]

То есть, запрашиваем http://mysite.ru/some_notexist_url - и на стороне сервера адрес изменится на http://mysite.ru/test.php?p=some_notexist_url
С этим все ОК. Запрашиваемый адрес получим через $_GET['p'].
А как быть, если запрашивается http://mysite.ru/somefile?page=1&cat=3 - на стороне сервера адрес будет http://mysite.ru/test.php?p=somefile?page=1&cat=3 ? 
В $_GET['p'] будет только somefile

Как решить такую проблему? Может в RewriteRule можно как-то указать, чтобы $1 кодировалась (заменялись знаки ? и &)?

----

Эта проблема решена. В $_SERVER['REQUEST_URI'] записывается строка запроса полностью. Из неё и можно выдрать все, что нужно.

Вопрос из первого сообщения все ещё открыт.

Это сообщение отредактировал(а) alexandrnv - 27.8.2009, 08:30
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Администрирование Web серверов и Web служб | Следующая тема »


 




[ Время генерации скрипта: 0.0808 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.