Переменная $SERVER и двойной локальный хост
Я построил функцию, которая в основном связывает выдержку с соответствующим постом. Для этого я решил, что переменная $_SERVER['SERVER_NAME']
может пригодиться в строительстве пути.
Я не знаю, связано ли это с тем фактом, что я тестирую страницу в локальной среде, но на моем локальном компьютере путь такой http://localhost/webdir/localhost/index.php?p=3
localhost
повторяется дважды. Что может вызвать это?
2 ответа
Решение
Использовать как это
$link='http://'.$SERVER_['SERVER_NAME'];
И если вы не хотите какого-либо значения типа GET, используйте это
$l1=explode('?',$SERVER_['SERVER_NAME']);
$link='http://'.$l1[0];
Надеюсь, это поможет вам.
Попробуйте даже этот Edit отлично работает почти для всех типов URL.
<?php
$l1=explode('?',$_SERVER["SERVER_NAME"]);
$link='http://'.$l1[0];
echo $link;
echo '<h2><center>Add users</center></h2>';
$pageURL = $_SERVER['HTTPS'] == 'on' ? 'https://' : 'http://';
$pageURL1 = $_SERVER['SERVER_PORT'] != '80' ? $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"] : $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
$pageURL=$pageURL.$pageURL1;
//$pageURLt=explode('?',$pageURL);//Uncomment this and next line if you don't want get variable
//$pageURL=$pageURL.$pageURLt[0];
echo $pageURL;
?>