Переписать разные URL с одной страницы на другую с помощью .htaccess - PullRequest
1 голос
/ 14 сентября 2011

Мне нужно знать, есть ли способ перенаправить длинные URL-адреса на короткие URL-адреса.

У меня есть страница RSS, на которой будет перечислено несколько новостей с моего сайта.Формат URL каждого элемента (согласно запросу MySQL) выглядит примерно так: http://example.com/news.php?id=2.

На моем news.php (после перенаправления на страницу новостей при нажатии на заголовок любой новости на странице RSS),есть параметры, установленные для переноса идентификаторов, которые выглядят как http://example.com/news.php?news=2&view=1&topic=12.

. Для целей SEO мне нужно erase эту грязную строку запроса, чтобы зрители могли видеть только http://example.com/news.php?id=2 на сервере.сбоку, он на самом деле читает http://example.com/news.php?news=2&view=1&topic=12.

Я создал файл .htaccess и он помещается в папку rss (где находится файл rss.php) и попытался несколько попыток, но без доступа.

Помогите мне в этом.

Ответы [ 2 ]

2 голосов
/ 15 сентября 2011

Должны ли параметры назначаться вместо ($ 1, $ 2, $ 3 ... и т. Д.)?

 RewriteRule ^news(/?)$ /news.php?news=$1&view=$2&topic=$3 [QSA,L,NC]
2 голосов
/ 15 сентября 2011

Вот что я бы сделал:

RewriteEngine on

# id + view + topic
# http://www.domain.com/news/1/1/12 will load: /news.php?news=1&view=1&topic=12
RewriteRule ^news/([0-9]+)/([0-9]+)/([0-9]+)(/?)$ /news.php?news=$1&view=$2&topic=$3 [QSA,L,NC]

Пожалуйста, этот .htaccess в корневой папке.

...