Разрешить только 4 доменам доступ к определенному контенту на другом сайте - PullRequest
0 голосов
/ 16 октября 2018

Я использую 4 рекламные страницы (все на разных доменах) для услуги, которую я продаю на другом домене.

Все 5 страниц / сайтов используют "обычный" PHP и HTML, без WordPress или других CMS.

Итак, на моем сайте продаж у меня есть форма входа (написанная в js), которую я хочу показывать только в том случае, если реферер принадлежит с моих 4 других рекламных страниц (доменов).

Так что мне нужна помощь, это sctipt, который делает следующее:

Люди, которые приходят с PRdomain1.com, PRdomain2.com, PRdomain3.com и PRdomain4.comувидит:

ЗАГОЛОВОК

СОДЕРЖАНИЕ

ФОРМА ВХОДА

ФУТБОЛ

и если URL моего сайта продажнабирается непосредственно в поле адреса ИЛИ приходят из другого домена, кроме моих 4 доменов PR, которые они увидят:

HEADER

CONTENT

FOOTER

1) Желательно, очень важно, чем ;-), оно должно быть совместимо с большинством распространенных браузеров.Он должен быть безопасным (часть LOGIN FORM) в том смысле, что его нельзя извлекать другим способом, кроме как из PR-доменов в качестве реферера.

2) ЭТО ДОЛЖНО РАБОТАТЬ, НЕ ДОЛЖНОесли PRdomains использует http / https или если подстраница отличается, например, PRdomain1.com/landing_page2.php

3) Это не должно занимать много нагрузки?Все мои PR-домены генерируют огромное количество трафика на страницу продаж.

Ответы [ 2 ]

0 голосов
/ 16 октября 2018

Это может быть решением, но я не эксперт в этом, так что, возможно, кто-то еще может подтвердить ??

<?php
$referrer = $_SERVER['HTTP_REFERER'];
if (preg_match("/prdomain1.com/",$referrer)) {
      echo 'ALL CONTENT INCL. LOGIN FORM HERE');
} elseif (preg_match("/prdomain2.com/",$referrer)) {
      echo 'ALL CONTENT INCL. LOGIN FORM HERE');
} elseif (preg_match("/prdomain3.com/",$referrer)) {
      echo 'ALL CONTENT INCL. LOGIN FORM HERE');
} elseif (preg_match("/prdomain4.com/",$referrer)) {
      echo 'ALL CONTENT INCL. LOGIN FORM HERE');
} else {
      echo 'ALL CONTENT WITHOUT LOGIN FORM HERE');
};
?>
0 голосов
/ 16 октября 2018

Вы можете сделать это с помощью jQuery на своей странице, например:

HEADER

CONTENT

<div id="#login" style="display: none">LOGIN FORM</div>

FOOTER

<script type="text/javascript">
$(document).ready (
{
  if ( document.location.hostname == 'prdomain1.com' || document.location.hostname == 'prdomain2.com' || document.location.hostname == 'prdomain3.com' || document.location.hostname == 'prdomain4.com')
  {
    $('#login').css ( 'display', 'block');
  }
});
</script>

С этим кодом ваша ФОРМА ВХОДА будет скрыта по умолчанию из-за style =«display: none» CSS в теге

, и если текущее имя хоста страницы (доступное по document.location.hostname ) имеет то, что вы ищете, скрипт изменит display Атрибут CSS для отображения содержимого div.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...