我正在使用$ wsurl作为我的网站清理网址$ wsurl ='http://'。 $ _SERVER ['HTTP_HOST']。 '/';但最近,当我想从网站管理面板回应它时,它给了我结果:
http://localhost/admin/> HTTP://本地主机/页= 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/
如果我的管理面板网址看起来像http://mydomain.com/admin/index.php,则$ wsurl将为http://mydomain.com/
答案 0 :(得分:4)
如果您遇到类似的问题,那么您可以试试这个:
$url = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.parse_url($url, PHP_URL_HOST) . '/';