|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
13.11.2009, 12:08 | #1 |
Пользователь
Регистрация: 13.11.2009
Сообщений: 14
|
Регулярные выражения и modrewrite
Нужно написать регулярное выражение довольно простого типа, которое будет переделывать ссылки следующего типа:
http://www.domain.com/?index на http://www.domain.com/index/ или http://www.domain.com/index.html Есть много примеров для обратного перевода # domain.com/articles/title/5/ из domaim.com/articles.php?name=title$page=5 RewriteRule ^articles([A-Za-z0-9-]+) /([0-9]+)/?$ article.php?name=$1&page=$2 [L] Не понимаю для чего это надо, т.к. вроде никто такой задачи не преследует.... Сам начал разбираться, но почему получаю ссылку http://www.domain.com/index/?index, либо полу какую-нибудь ошибку сервера.... Я дошел до следующего кода: RewriteEngine On RewriteBase / RewriteRule ^\?{1}[a-z]+$ /index/ [L] соответственно, если бы строка заменялось, то добавил еще скобочки () и вместо index написал $1 Может есть какая-нибудь программа для отладки регулярных выражений? |
13.11.2009, 12:26 | #2 |
Пользователь
Регистрация: 22.06.2009
Сообщений: 17
|
Во первых прочитайте о том что такое регулярные выражения вообще:
http://phpclub.ru/detail/article/regexp_1 И научитесь их правильно составлять. Во вторых прочитайте как работает mod_rewrite, можно начать отсюда например: http://ru.wikipedia.org/wiki/ЧПУ_(Интернет) Хорошие отдельные ресурсы по mod_rewrite мне не попадались, но гугле разрозненных сведений тонны. В вашем случае все довольно просто. Код:
|
13.11.2009, 12:31 | #3 |
Пользователь
Регистрация: 13.11.2009
Сообщений: 14
|
попробовал сделать, как Вы написали, но ничего не получилось, выдается 404 ошибка.
|
13.11.2009, 12:33 | #4 |
Пользователь
Регистрация: 13.11.2009
Сообщений: 14
|
Про регулярные выражения и modrewrite почитал довольно много и только после этого решил спросить.
|
13.11.2009, 12:37 | #5 | |
Пользователь
Регистрация: 22.06.2009
Сообщений: 17
|
Цитата:
|
|
13.11.2009, 12:49 | #6 |
Пользователь
Регистрация: 13.11.2009
Сообщений: 14
|
Переход осуществляется.
(Насчет modrewrite, я так понял он нужен, чтобы ЧПУ переделывать под ссылки понятные скрипту?(Ну если вот так, совсем просто рассматривать)) |
13.11.2009, 18:30 | #7 | |
Пользователь
Регистрация: 10.11.2009
Сообщений: 48
|
Цитата:
RewriteRule ^\?(.*)$ $1/ or RewriteEngine On RewriteRule ^\?(.*)$ $1.html Последний раз редактировалось Gerb22; 13.11.2009 в 18:32. |
|
19.05.2010, 15:28 | #8 |
Новичок
Джуниор
Регистрация: 19.05.2010
Сообщений: 2
|
подскажите как сделать такое:
у меня на сервере есть страница site.ru/page.htm чтобы к ней был доступ по site.ru/?mod=page |
19.05.2010, 15:33 | #9 |
Laravel/Vue expert
Старожил Подтвердите свой е-майл
Регистрация: 08.08.2007
Сообщений: 2,832
|
RewriteRule ^([a-z]+).htm$ index.php?mod=$1
|
19.05.2010, 15:46 | #10 |
Новичок
Джуниор
Регистрация: 19.05.2010
Сообщений: 2
|
SkyM@n, спасибо, уже разобрался, причина была в другом
Последний раз редактировалось vasiliyn; 19.05.2010 в 16:00. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Регулярные выражения | ACE Valery | PHP | 5 | 14.10.2009 11:37 |
Регулярные выражения | AnalogXP | Общие вопросы Delphi | 0 | 01.08.2009 23:12 |
регулярные выражения | wyvern | PHP | 3 | 09.04.2009 22:15 |
Регулярные выражения | Adamant | Общие вопросы C/C++ | 1 | 26.11.2007 19:44 |