Как создать динамические / дружественные URL-адреса с помощью PHP?

Может ли кто-нибудь объяснить, как создавать дружественные URL-адреса? Я имею в виду такие URL-адреса, как http://store.steampowered.com/app/22600/ , в которых нет таких страниц, как index.php .

Solutions Collecting From Web of "Как создать динамические / дружественные URL-адреса с помощью PHP?"

Если вы используете только cpanel, используйте .htaccess .

Если это не сработает, вам остается разобрать URL-адрес в php со ссылкой:

http://server.com/router.php/search

Вы можете сделать это с чем-то вроде этого.

 <? list($junk,$url) = explode("router.php",$_SERVER['REQUEST_URI']); $paths = explode("/", $url); if ($paths[0] == 'search') { Header("Location: /search.php"); } ?> 

Вам нужно найти apache mod_rewrite (предполагая, что вы используете apache для своего веб-сервера). Сам PHP не делает этого для вас, веб-сервер выполняет большую часть работы. Вы должны сказать своему веб-серверу, чтобы он использовал mod_rewrite, чтобы указать все URL-адреса, соответствующие определенному шаблону, чтобы указать на какой-либо файл .php, который вам нравится. Вы можете передать аргументы в вашем шаблоне URL-адресов, какие бы вы ни выбрали. например, используя значения / для разграничения ключей или просто значения. Если у вас нет корневого доступа к серверу и его включение, вы обычно можете поместить эти правила перезаписи мод в файл .htaccess в корень вашего сайта.

Sitepoint имеет хорошую ссылку для новичков. http://articles.sitepoint.com/article/guide-url-rewriting

если вы используете apache, это должно работать / есть идея:

 RewriteRule ^(.*)$ /index.php?/$1 [L] 

теперь ваш URL-адрес отправится на сайт http://store.steampowered.com/index.php/app/22600/