Как сайты используют фактический URL в качестве параметра? - PullRequest
2 голосов
/ 13 сентября 2011

Как сайты используют фактическое местоположение URL в качестве параметра?

Пример:

Parameter = www.mysite.com/search.php?q=parameter
URL = www.mysite.com/s/parameter

Другой пример:

Parameter = www.mysite.com/user.php?uid=someid
URL = www.mysite.com/users/username

Как они предотвращают 404ошибка и вместо этого обрабатывать URL «окончание» как параметр?Любой ответ приветствуется, но предпочтение отдается php.

ОБНОВЛЕНИЕ: Зависит ли то, как вы это настроите, от вашего хостинг-провайдера?

Ответы [ 2 ]

4 голосов
/ 13 сентября 2011

Это обычно называется "маршрутизацией" и является функцией многих фреймворков.

Этому способствует конфигурация веб-сервера (см. Mod_rewrite на Apache), которая внутренне переписывает любой URL-адрес, не соответствующий фактическому файлу, в индекс папки над ним и т.

Смотри также: http://knol.google.com/k/seo-friendly-url-or-pretty-url-using-apache-mod-rewrite#

1 голос
/ 13 сентября 2011

С mod_rewrite

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^s/(.*)$ search.php?q=$1 [L] 
RewriteRule ^users/(.*)$ users.php?uid=$1 [L] 

RewriteRule ^(.*)$ index.php?route=$1 [L,QSA] 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...