Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Определение базового URL сайта программно при смене хостинга

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Определение базового URL сайта программно при смене хостинга
sadex
Отправлено: 24 Февраля, 2014 - 12:06:02
Post Id


Новичок


Покинул форум
Сообщений всего: 48
Дата рег-ции: Июнь 2013  


Помог: 1 раз(а)




В конфигах разных CMS и форумов прописывается базовый URL сайта по типу:
CODE (htmlphp):
скопировать код в буфер обмена
  1. $base_url  = 'http://some_site/smf/'; // например, для известного форума SMF

При этом при смене хостинга этот $base_url приходится прописывать заново вручную.

Вопрос к корифеям. Возможно ли определять автоматически, программно, этот самый базовый URL сайта, чтобы все работало при смене хостинга?

Пока ничего кроме
CODE (htmlphp):
скопировать код в буфер обмена
  1. $base_url = 'http://'.$_SERVER['SERVER_NAME'].'/';

не пришло в голову.

UPD. Уточнение. Для внутренних путей и ссылок применяется относительная адресация, а для внешних - абсолютная адресация.

(Отредактировано автором: 24 Февраля, 2014 - 15:55:25)

 
 Top
Ch_chov
Отправлено: 24 Февраля, 2014 - 14:07:33
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




sadex пишет:
Пока ничего кроме
скопировать код в буфер обмена
$base_url = 'http://'.$_SERVER['SERVER_NAME'].'/';

не пришло в голову.


Почти правильно. SERVER_NAME заменить на SERVER_HOST, а '/' заменить на относительный путь.

PHP:
скопировать код в буфер обмена
  1. $base_path = dirname($_SERVER['SCRIPT_NAME']);


А зачем вам нужен базовый урл? Он может понадобится если у вас мультисайтинг или авторизация привязанная к домену. Используйте в ссылках относительные пути.
 
 Top
IllusionMH
Отправлено: 24 Февраля, 2014 - 14:18:41
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




sadex, в тех же CMS этот базовый урл может оказаться в базе данных в полных ссылках guid, к примеру, и просто находиться в БД.
Так что внимательно нужно глянуть что данная CMS пишет в БД.

Переносе на другой хостинг(причем смена адреса тут совсем не обязательна) придется править и файлик бд. Но это дело отлично решается обычным поиском заменой.
100% работает с WP. И я не помню проблем с Drupal.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с сетью »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB