Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: ЧПУ: /pagename.html to /index.php?p=pagename with arguments GET
 
 автор: pavluxa09   (18.07.2011 в 19:08)   письмо автору
 
 

Добрый день, уважаемые программисты! В процессе написания скрипта возникла необходимость использования ЧПУ. Необходимо при помощи htaccess сделать ЧПУ вида:

http://мойсайт/страница.html равносильна http://мойсайт/index.php?p=страница
http://мойсайт/страница.html?аргумент=значение равносильно http://мойсайт/index.php?p=страница&аргумент=значение
И тоже самое для двух аргументов, более не нужно.


Заранее спасибо.

  Ответить  
 
 автор: cheops   (18.07.2011 в 21:30)   письмо автору
 
   для: pavluxa09   (18.07.2011 в 19:08)
 

Страница всегда английскими буквами набрана или там могут быть какие-то другие символы? Аргумент произвольный или у него постоянное имя?

  Ответить  
 
 автор: pavluxa09   (18.07.2011 в 21:38)   письмо автору
 
   для: cheops   (18.07.2011 в 21:30)
 

Страница всегда английскими буквами и возможны цифры, два возможных аргумента произвольные

  Ответить  
 
 автор: pavluxa09   (18.07.2011 в 22:32)   письмо автору
 
   для: cheops   (18.07.2011 в 21:30)
 

В результате долгих и мучительных эксперементов был получен требуемый результат:

RewriteEngine On 
RewriteBase / 
RewriteRule ^([a-z0-9_]+).html$ index.php?p=$1 [L,QSA]

  Ответить  
 
 автор: cheops   (19.07.2011 в 01:28)   письмо автору
 
   для: pavluxa09   (18.07.2011 в 22:32)
 

Теперь перед ним нужно второе правило добавить для параметров
RewriteRule ^([a-z0-9_]+).html\?(.+)$ index.php?p=$1?$2 [L,QSA]

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования