rewrite_rule

170
.
Я хотел изменить адрес http://site.ru/?chat на http://site.ru/chat
Так не получается (
RewriteRule ^chat/$ index.php?chat$1 [L]
.
Mod_rewrite подключен
.
КИДАЛА!!! Дел не иметь!
А причем тут $1? Он вобще не уместен
.
# MARAZM (01.01.2016 / 19:34)
А причем тут $1? Он вобще не уместен
Тогда как будет?
.
MARAZM
КИДАЛА!!! Дел не иметь!
# Bahakz (01.01.2016 / 18:55)
Я хотел изменить адрес http://site.ru/?chat на http://site.ru/chat
Так не получается (
У тебя в индекс.пхп чат или индекс.пхп?чат? ПробуйиRewriteRule ^chat/$ index.php?chat [L,QSA] или RewriteRule ^chat/$ index.php?chat [L,QSA]
.
Пример 2: создание дружественных адресов URL
Допустим, вы написали PHP скрипт display_article.php для вывода статей на вашем сайте. Вы можете ссылаться на статью с помощью следующего адреса URL:

1
http://www.example.com/display ... ticle
Данный адрес выглядит уродливо и запрос внутри него (?articleId=my-article) может смущать некоторые поисковые механизмы. Гораздо лучше использовать адрес URL такого вида:

1
http://www.example.com/article ... icle/
Вы можете задействовать mod_rewrite для преобразования ссылок первого формата во второй, что даст возможность использовать дружественные ссылки на страницах сайта, а обращение будет выполняться к реальным адресам, не видимым никому. Для этого файл .htaccess, расположенный в корневой директории вашего сайта, должен содержать следующие строки:

1
RewriteEngine on
2
RewriteRule ^articles/([^/]+)/?$ display_article.php?articleId=$1 [L]
Описание правила RewriteRule:

^articles/([^/]+)/?$ - регулярное выражение, соответствующее любому URL в формате articles/(article ID)/. Оно гласит:"соответствует началу URL (^) , за которым следует текст articles/, за которым следует один или более символов, не являющиеся слэшем ([^/]+), за которыми может следовать слэш (/?), за которым следует символ окончания URL ($)". Обратите внимание на круглые скобки вокруг части шаблона [^/]+. Таким образом текст, соответствующей данной части, например, "my-article", сохраняется для дальнейшего использования.
display_article.php?articleId=$1 - данная часть правила указывает серверу Apache использовать скрипт display_article.php , которому передается текст, соответствующий подшаблону [^/]+ из регулярного выражения первой части (например, "my-article"), в качестве параметра articleId. $1 называется обратной связью и хранит текст соответствующий подшаблону. Если регулярное выражение содержит еще один подшаблон в круглых скобках, то соответствующий ему текст будет храниться в переменной $2, и так далее.
[L] - как и в предыдущем примере мы используем флаг для остановки дальнейшей обработки URL, чтобы не произошло изменение адреса другими правилами RewriteRule.
Выше приведенное правило RewriteRule берет запрашиваемый URL в формате http://www.example.com/article ... icle/ и преобразует его в URL вида http://www.example.com/display ... ticle.
.
ValekS
Ей 25
kikob, ну так в чем проблема? Если такая статья-урок есть)
А, это не ты ТС. Извиняюсь)
.
Сексуальность валенка
kikob, Так в чем проблема? Если статья есть такая напиши рабочий пример
.
Все, спасибо я уже сделал
Всего: 9