网络营销电子商务研究中心

网络营销电子商务研究中心 (https://www.0058.net/index.php)
-   代码交流 (https://www.0058.net/forumdisplay.php?f=16)
-   -   用php简单实现Search Engine Friendly的URL (https://www.0058.net/showthread.php?t=1575)

topvip 2006-10-15 06:17 AM

用php简单实现Search Engine Friendly的URL
 
要实现这个 http://www.myhost.com/foo.php?a=A&b=B&c=C -> http://www.myhost.com/foo.php/a/A/b/B/c/C的url转换,实际上还有不同的办法.

比如说我用的是虚拟主机,也想实现url优化,但是我没有服务器权限,这时候可以从PATH_INFO来下手.

访问http://www.myhost.com/foo.php/a/A/b/B/c/C这个url的时候,如果apache的AllowPathinfo已经打开,用php访问$_SERVER['PATH_INFO']可以获得a/A/b/B/c/C这串字符 这时候再用php加以解析:

PLAIN TEXTPHP:

if(!empty($_SERVER['PATH_INFO'])) {
$paths = explode('/', substr($_SERVER['PATH_INFO'], 1));
for($i = 0, $cnt = count($paths); $i <$cnt; $i++)
$_GET[$paths[$i]] = @(string)$paths[++$i];
}

这样就可以简单的将PATH_INFO转换为全局的$_GET数组,这样还有个好处

http://www.myhost.com/foo.php?a=A&b=B&c=C
http://www.myhost.com/foo.php/a/A/b/B/c/C
上面的url同时可以访问,保证了通用性


All times are GMT +8. The time now is 03:44 AM.

Powered by vBulletin Version 3.8.7
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.