2011-10-11 125 views
0

我使用$ wsurl作为我的网站清洁url $ wsurl ='http://'。 $ _SERVER ['HTTP_HOST']。 '/';但最近,当我想从网站管理面板呼应它,它给我的结果是:> HTTP如何用php获得干净的网站地址?

http://localhost/admin/:/ //的本地主机页面= 166

代替

http://localhost/?page=166

更多?详细

我用什么:<a target="_blank" href="><?=$wsurl?>?page=<?=$new_id?>">Link</a>

我已经得到了作为HTML输出<a target="_blank" href=">localhost/?page=170">Link</a>

但是,当我从管理面板中单击它,它会打开它完全不

存在如何处理这个问题localhost/admin>http://localhost/?page=170页面(而不是http://localhost/?page=170)?

我想从ws中的任何地方获取网站的主要网址。 对于回,我若在管理面板http://localhost/admin/index.php我的$ wsurl将http://localhost/

如果我的管理面板的URL看起来像http://mydomain.com/admin/index.php的$ wsurl将http://mydomain.com/

回答

4

如果你正面临这样的话可以问题试试这个:

$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; 
echo 'http://'.parse_url($url, PHP_URL_HOST) . '/'; 
+0

仍然获得类似以http://本地主机/管理员>的http://本地主机/页= 170 – heron

+0

的问题是我得到真正的结果Link,但是当我从管理员点击它?位于localhost/admin的面板打开localh的页面ost/admin> http:// localhost /?page = 170。但它必须从网站 – heron

+0

内部的任何地方打开页面http:// localhost /?page = 170什么是您使用的extact代码?您得到的extact输出是什么? – aNi