X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

5 страниц V  < 1 2 3 4 5 >
Открыть тему
Тема закрыта
> Проверка скрипта go.php
Ilya-X5X
Ilya-X5X
сообщение 5.1.2019, 22:29; Ответить: Ilya-X5X
Сообщение #12


(Guitaristka @ 6.1.2019, 01:11) *
Сайт закрылся на белый лист с ошибкой 500

Я надеюсь Вы в коде Ixman исправили  вашсайт.ru на адрес Вашего сайта?

Я бы сделал что-то вроде:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://guitaristka\.ru [NC]
RewriteRule ^.*$ /go.php [NC,QSA]

Вообще, в интернете тьма примеров по .htaccess.

Ещё можно всё-таки использовать PHP и просто добавить в Ваш go.php проверку реферера. Вам уже даже показали как это сделать:

if($_SERVER['HTTP_HOST'] == parse_url($_SERVER["HTTP_REFERER"], PHP_URL_HOST)) {
header('Location: '.$_GET['go']);
}


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Guitaristka
Guitaristka
Topic Starter сообщение 5.1.2019, 22:39; Ответить: Guitaristka
Сообщение #13



if($_SERVER['HTTP_HOST'] == parse_url($_SERVER["HTTP_REFERER"], PHP_URL_HOST))
{
header('Location: '.$_GET['go']);
}

(( не работает. Но мысль нужна эта.  Подскажите пожалуйста - как написать эту мысль, чтобы работала?


 я вставляю ссылку  абсолютно на любой сайт вне самого сайта - просто в браузере - и осуществляется переход - как и делают все порносайты. Нужно как-то привязать этот переход не обособленно, а именно только с сайта - тогда переход происходит. А если просто с другого сайта - нет.

http://www.guitaristka.ru/go.php?go=https://yandex.ru/



Сообщение отредактировал Guitaristka - 5.1.2019, 22:47


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
stvJnK
stvJnK
сообщение 5.1.2019, 22:50; Ответить: stvJnK
Сообщение #14


Guitaristka, Что или как именно не работает? В код ниже добавил, если перейти по адресной строке (на прямую) то выдает ошибку 404.

<?php
if(isset($_SERVER["HTTP_REFERER"])) {
if($_SERVER['HTTP_HOST'] == parse_url($_SERVER["HTTP_REFERER"], PHP_URL_HOST)) {
header('Location: '.$_GET['go']);
}
} else {
// Выводим ошибку 404
header("HTTP/1.0 404 Not Found");
exit;
}



Сообщение отредактировал stvJnK - 5.1.2019, 22:50
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
stvJnK
stvJnK
сообщение 5.1.2019, 23:05; Ответить: stvJnK
Сообщение #15


Guitaristka, возможно у Вас не корректно отдаются заголовки, проверить можно:

<?php
echo '<br>HTTP_REFERER:';
var_dump($_SERVER["HTTP_REFERER"]);

echo '<br> "'.$_SERVER['HTTP_HOST'].'" == "'. parse_url($_SERVER["HTTP_REFERER"], PHP_URL_HOST).'"';
echo '<pre>Информация по заголовкам сервера:';
var_dump($_SERVER);

если первая строка будет HTTP_REFERER: NULL , значит надо смотреть другие варианты переходов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Guitaristka
Guitaristka
Topic Starter сообщение 6.1.2019, 12:10; Ответить: Guitaristka
Сообщение #16


Вставила код: в go.php

<?php
if(isset($_SERVER["HTTP_REFERER"])) {
if($_SERVER['HTTP_HOST'] == parse_url($_SERVER["HTTP_REFERER"], PHP_URL_HOST)) {
header('Location: '.$_GET['go']);
}
} else {
// Выводим ошибку 404
header("HTTP/1.0 404 Not Found");
exit;
}

echo '<br>HTTP_REFERER:';
var_dump($_SERVER["HTTP_REFERER"]);
echo '<br> "'.$_SERVER['HTTP_HOST'].'" == "'. parse_url($_SERVER["HTTP_REFERER"], PHP_URL_HOST).'"';
echo '<pre>Информация по заголовкам сервера:';
var_dump($_SERVER);

?>

при переходе с сайта написало:

Warning: Cannot modify header information - headers already sent by (output started at /home/guitaristes/public_html/go.php:2) in /home/guitaris/public_html/go.php on line 5

HTTP_REFERER:string(36) "http://www.guitaristka.ru/main.shtml"
"www.guitaristka.ru" == "www.guitaristka.ru"

ааНбаОбаМаАбаИб аПаО аЗаАаГаОаЛаОаВаКаАаМ баЕбаВаЕбаА:array(40) {
["SERVER_SIGNATURE"]=>
string(0) ""
["UNIQUE_ID"]=>
string(24) "XDG231ttyXcAAB6I0jcAAAAZ"
["HTTP_X_FORWARDED_FOR"]=>
string(12) "46.242.10.91"
["HTTP_USER_AGENT"]=>
string(77) "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0"
["PHPRC"]=>
string(26) "/home/guitaristes/public_html"
["SERVER_PORT"]=>
string(2) "80"
["HTTP_HOST"]=>
string(18) "www.guitaristka.ru"
["HTTP_X_REAL_IP"]=>
string(12) "46.242.10.91"
["DOCUMENT_ROOT"]=>
string(26) "/home/guitaristes/public_html"
["PHP_DOCUMENT_ROOT"]=>
string(14) "/home/guitaris"
["SCRIPT_FILENAME"]=>
string(33) "/home/guitaris/public_html/go.php"
["REQUEST_URI"]=>
string(35) "/go.php?go=http://www.musiclady.ru/"
["SCRIPT_NAME"]=>
string(7) "/go.php"
["HTTP_CONNECTION"]=>
string(5) "close"
["PHP_FCGI_CHILDREN"]=>
string(1) "0"
["REMOTE_PORT"]=>
string(5) "55510"
["PATH"]=>
string(13) "/bin:/usr/bin"
["PWD"]=>
string(26) "/home/guitaristes/public_html"
["SERVER_ADMIN"]=>
string(24) "webmaster@guitaristka.ru"
["REDIRECT_STATUS"]=>
string(3) "200"
["TZ"]=>
string(13) "Europe/Moscow"
["HTTP_ACCEPT_LANGUAGE"]=>
string(35) "ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3"
["HTTP_REFERER"]=>
string(36) "http://www.guitaristka.ru/main.shtml"
["HTTP_ACCEPT"]=>
string(63) "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
["REMOTE_ADDR"]=>
string(12) "46.242.10.91"
["SHLVL"]=>
string(1) "0"
["SERVER_NAME"]=>
string(18) "www.guitaristka.ru"
["SERVER_SOFTWARE"]=>
string(6) "Apache"
["MAGICK_THREAD_LIMIT"]=>
string(1) "2"
["QUERY_STRING"]=>
string(27) "go=http://www.musiclady.ru/"
["SERVER_ADDR"]=>
string(14) "91.109.201.119"
["GATEWAY_INTERFACE"]=>
string(7) "CGI/1.1"
["HTTP_UPGRADE_INSECURE_REQUESTS"]=>
string(1) "1"
["SERVER_PROTOCOL"]=>
string(8) "HTTP/1.0"
["REQUEST_METHOD"]=>
string(3) "GET"
["HTTP_COOKIE"]=>
string(579) "last_visit=1546751149240::1546761949240; phpbb3_ginr1_k=se8uce5pwefvp1tw; _ym_uid=1517900361216872457; coppermine_data=YTo0OntzOjI6IklEIjtzOjMyOiI0Y2M4MDY5MGVmYjliOGNkMTk1NzA0MGQ2ZTQy
NTdlZiI7czoyOiJhbSI7aToxO3M6NToibGl2X2EiO2E6NDp7aTowO2k6NTtpOjE7aTozO2k6MjtpOjE7a
TozO2k6NDt9czozOiJsaXYiO2E6NTp7aTowO3M6NDoiMzU1NiI7aToxO3M6NDoiMzg0NSI7aToyO3M6ND
oiMzc2MiI7aTozO3M6MToiMSI7aTo0O3M6MzoiMjM2Ijt9fQ%3D%3D; 0dd0220d4d5cd6e0798559ab5508fb7d=57c7f1d7f6ab1cb824770ebf8bc0ac94; phpbb3_ginr1_u=5; phpbb3_ginr1_sid=a1a5b961c1ca9fbf152aad6f3aad3601; PHPSESSID=6d482763e6261ca9426bd9d349fb254f"
["PHP_SELF"]=>
string(7) "/go.php"
["REQUEST_TIME"]=>
int(1546761951)
["argv"]=>
array(1) {
[0]=>
string(27) "go=http://www.musiclady.ru/"
}
["argc"]=>
int(1)
}


при переходе с адресной строки напрямую написало:

Warning: Cannot modify header information - headers already sent by (output started at /home/guitaris/public_html/go.php:2) in /home/guitaris/public_html/go.php on line 9

а такой код

<?php
if(isset($_SERVER["HTTP_REFERER"])) {
if($_SERVER['HTTP_HOST'] == parse_url($_SERVER["HTTP_REFERER"], PHP_URL_HOST)) {
header('Location: '.$_GET['go']);
}
} else {
// Выводим ошибку 404
header("HTTP/1.0 404 Not Found");
exit;
}

дает ошибку

Warning: Cannot modify header information - headers already sent by (output started at /home/guitaristes/public_html/go.php:2) in /home/guitaris/public_html/go.php on line 5



Сообщение отредактировал Guitaristka - 6.1.2019, 12:19


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Ilya-X5X
Ilya-X5X
сообщение 6.1.2019, 12:29; Ответить: Ilya-X5X
Сообщение #17



Warning: Cannot modify header information - headers already sent by (output started at /home/guitaristes/public_html/go.php:2) in /home/guitaris/public_html/go.php on line 5

Ошибка говорит о том, что заголовки уже были отправлены выше. Возможно в начале файла где-то случайно вставили какой-то символ.

А вообще по-хорошему наймите программиста или начните учить PHP, с таким гаданием и без доступа к файлам далеко не уедешь. 


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Guitaristka
Guitaristka
Topic Starter сообщение 6.1.2019, 12:53; Ответить: Guitaristka
Сообщение #18


Ilya74, так я сам файл прикрепила в первом сообщении - можете его посмотреть. Других не используется. файл go.php и строка у начала сайтов http://www.guitaristka.ru/go.php?go=

Вы можете сами в файл писать коды и вставлять через строку мою любой сайт - чтобы увидеть результат

<?php
if(isset($_SERVER["HTTP_REFERER"])) {
if($_SERVER['HTTP_HOST'] == parse_url($_SERVER["HTTP_REFERER"], PHP_URL_HOST)) {
header('Location: '.$_GET['go']);
}
} else {
// Выводим ошибку 404
header("HTTP/1.0 404 Not Found");
exit;
}
?>

Этот код дает просто пустую чистую белую страницу при переходе.


Сообщение отредактировал Guitaristka - 6.1.2019, 12:55


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ixman
ixman
сообщение 6.1.2019, 14:30; Ответить: ixman
Сообщение #19


(Guitaristka @ 6.1.2019, 15:53) *
header("HTTP/1.0 404 Not Found"); exit;


потому что здесь просто выводится заголовок 404 not found и больше ничего, можно сделать редирект на другой внешний URL. или на главную сайта. В вашем случае лучше всё же кому-то отдать адалт трафик

<?php
if(isset($_SERVER["HTTP_REFERER"])) {
if($_SERVER['HTTP_HOST'] == parse_url($_SERVER["HTTP_REFERER"], PHP_URL_HOST)) {
header('Location: '.$_GET['go']);
}
} else {
header('Location: http://site.ru');
exit;
}
?>

(Ilya74 @ 6.1.2019, 01:04) *
Так что оба варианта правильные, но требуют доработки под задачу.
 

пробовал вчера по всякому код для htaccess, но чёт никак и рефер другой был
Я бы конечно предложил добавлять свои внешние ссылки в базу и проверять их перед редиректом, есть ли такие в базе. Но для ТС такой вариант будет всего скорее самостоятельно не реализуем 
Ещё можно попробовать такой код, если есть проблемы с заголовком

<?php
ob_start();
if (isset($_SERVER['HTTP_REFERER'])) {
   if ($_SERVER['HTTP_HOST'] == parse_url($_SERVER['HTTP_REFERER'], PHP_URL_HOST)) {
     header('Location: '.$_GET['go']);
    }
  } else {
   header('Location: http://site.ru');
    exit;
  }
ob_end_flush();
?>


Сообщение отредактировал Ixman - 6.1.2019, 14:15
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Guitaristka
Guitaristka
Topic Starter сообщение 6.1.2019, 14:38; Ответить: Guitaristka
Сообщение #20


Ixman, вот похоже , что такой вариант у меня срабатывает - со строкой

header('Location: http://site.ru');

единственно - как прописать (добавить) в этот кусок переход как с http://www.guitaristka.ru/go.php?go=  так и с http://guitaristka.ru/go.php?go=
Потому что сейчас с www  -он переходит, а просто без него дает снова чистый лист. А у меня на сайте эти ссылки ставились несколько лет назад и что-то писалось с www , что-то без - есть такая проверка?
Спасибо Вам огромное)
:unsure: :( - сработало 5 раз и снова белый лист. Хоть www, хоть без ((
Из браузера переходит отлично на site.ru , а вот с сайта снова белый лист открывается


Сообщение отредактировал Guitaristka - 6.1.2019, 14:41


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ixman
ixman
сообщение 6.1.2019, 14:41; Ответить: ixman
Сообщение #21


Guitaristka, по идеи должны работать оба варианта, сейчас попробую разобраться что не так там
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
5 страниц V  < 1 2 3 4 5 >
Открыть тему
Тема закрыта
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыВеб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
44 qpPeW 21199 22.2.2021, 15:08
автор: qpPeW
Открытая тема (нет новых ответов) Fullstack-разработчик на PHP
0 trueApp 248 15.2.2021, 15:52
автор: trueApp
Горячая тема (нет новых ответов) Проверка позиций сайтов в поисковых системах с помощью Positon.ru
Мониторинг продвижения сайтов
151 Positon 121364 5.2.2021, 13:59
автор: Dropex
Открытая тема (нет новых ответов) Поиск кодера в команду. PHP, Pyton. На постоянку.
7 getsend_mw 1481 3.2.2021, 21:15
автор: getsend_mw
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыНесколько RSS вставить в HTML скрипта
возможно такое или нет?
0 MihalychAIP 413 26.1.2021, 14:45
автор: MihalychAIP


 



RSS Текстовая версия Сейчас: 3.3.2021, 0:37
Дизайн