Суббота, 09 Июл 2016 в 22:31

Использование на сайте base href=

Автор: admin

При использовании на сайте <base href=«http://что-то/»> возникает проблема: браузеры начинают интерпретировать все ссылки относительно этого базового адреса.

hqdefault (1)

Как задавать правильно базовый адрес ссылок? Часто при использовании SSL почему-то код страницы не работает как надо. Кусок кода разбирает переменные сервера и подставляет верный протоков в URL.


<?php
$isSecure = false;
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') { $isSecure = true;}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https' || !empty($_SERVER['HTTP_X_FORWARDED_SSL']) && $_SERVER['HTTP_X_FORWARDED_SSL'] == 'on') {
$isSecure = true;}
$root= (($isSecure) ? "https://" : "http://").$_SERVER['HTTP_HOST'];
$root.= str_replace(basename($_SERVER['SCRIPT_NAME']), '', $_SERVER['SCRIPT_NAME']);
echo '<base href="'.$root.'" />';
?>

Ваш отзыв

Цитаты великих

"Искусство — как поиски алмазов. Ищут сто человек, а находит один. Но этот один никогда не нашел бы алмаза, если бы рядом не искало сто человек."

В. Солоухин

Я в Контакте