Проблема перезаписи URL - PullRequest
0 голосов
/ 02 мая 2009

Я сделал сайт в php.

В базе данных хранится список заголовков историй, и когда пользователь щелкает любой заголовок среди них, пользователь перенаправляется на страницу со строкой запроса. как story.php? id = 25

Это означает, что теперь будет отображаться история с идентификатором 25. Теперь я хочу переписать URL, но когда я переписываю его, возникает проблема.

На странице story.php я читаю строку запроса, например, $ _GET ['id'] .., но после перезаписи URL я не могу ее так прочитать. Может кто нибудь подскажет, что делать

Ответы [ 2 ]

2 голосов
/ 02 мая 2009

Вы можете использовать .htaccess для перезаписи длинных URL-адресов на стороне сервера, но не перенаправлять браузер (поэтому он все еще показывает длинный URL-адрес в адресной строке), что-то вроде:

 RewriteEngine on
 RewriteRule story\/(\d+)\/(.+) story.php?id=$1

Просто сделайте ваши длинные ссылки похожими на www.site.com/story/25/This_is_the_title

0 голосов
/ 02 мая 2009

Если вы внесли некоторые изменения в строку URL, вы можете сделать это.

http://www.domain.com/story.php?story=25&title=some_name

Который после перезаписи может быть таким.

http://www.domain.com/25/some_name.html

Код:

RewriteEngine On
RewriteRule ^story/([^/]*)/([^/]*)\.html$ /story.php?story=$1&title=$2 [L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...