PHP-скрипт, который пересылается путем чтения субдомена WHILE с использованием https - PullRequest
0 голосов
/ 24 мая 2018

У меня есть скрипт php, который перенаправляет пользователя в зависимости от того, какой поддомен записан в URL.

Теперь обычно вы читаете HTTP_URI, но мой веб-хост использует iframe, поэтому я долженПрочитайте HTTP_REFERRER.

Теперь к проблеме, при доступе к сайту "нормальный", как mysite.com или

http://example.com

, он работает нормально, однако, когдаиспользуя https, он показывает только белую страницу.

Это мой код:

<?PHP

$REFERRER = $_SERVER['HTTP_REFERER'];

// Or other method to get a URL for decomposition 
$domain = substr($REFERRER, strpos($REFERRER, '://')+3); 
$domain = substr($domain, 0, strpos($domain, '/')); 
// This line will return 'en' of 'en.example.com' 
$subdomain = substr($domain, 0, strpos($domain, '.')); 
//Echo $subdomain;

header("Location: https://example2.com/'$subdomain");
?>

.. У кого-нибудь есть предложения?Перезапись не работает на поддоменах на этом сервере.

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

Как отмечалось в комментариях, проблема заключается в том, что «заблокирована загрузка смешанного активного содержимого».

Невозможно загрузить iframe или его содержимое через http, если сайт, содержащий iframe, загружен через https.

0 голосов
/ 24 мая 2018

используйте это для переписывания https в вашем .htaccess

RewriteEngine On
RewriteCond %{HTTPS} off
# rewrite to HTTPS:
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

, и вы можете использовать это для субдомена

RewriteCond %{HTTP_HOST} ^subdomain\.domain\.com$ [NC]
RewriteRule ^((?!sub1/).*)$ /$1 [L,NC]

Объяснение здесь

...