2016-09-21 1 views
1

Мне нужна помощь с проблемой в PHP.Как перенаправить на страницу с ошибкой-404, если url в .txt-файле

Как я могу переадресовать/заблокировать страницу моего сайта, если URL-адрес находится в текстовом файле (block.txt)

Пример block.txt:

http://www.example.com/search.php?q=querry1 
http://www.example.com/search.php?q=querry2 

Если посетитель запуска url в файле block.txt, он будет перенаправлен на страницу с ошибкой-404.

Спасибо

+1

Ознакомьтесь с командой 'RewriteMap' в официальной документации по используемым инструментам: https: // httpd. apache.org/docs/2.4/rewrite/rewritemap.html – arkascha

ответ

1

Одна возможность состоит в том, чтобы использовать комбинацию file_get_contents() и in_array():

$badURLs = file_get_contents('block.txt'); 
$badURLArray = explode("\n", $badURLs); 

$thisURL = //you define this 

if (in_array($thisURL, $badURLArray)) { 
    header('Location: http://www.example.com/custom404.html'); 
} 
+0

Прошу прощения, но это не w Орк для меня? Я не уверен, что эта линия: $ thisURL = // вы определяете этот приветов – dLehr

0

Это не рекомендуется хранить перенаправляет в .txt файлах

.htaccess был введен в PHP для обработки этих запросов

Выполните следующие шаги

1.) Сохраните файл с именем «.htaccess», не учитывайте двойные кавычки.

2.) Вставьте этот код в нем

# we have set here custom error files to handle server errors 
ErrorDocument 404 /404.php 
ErrorDocument 403 /403.php 
ErrorDocument 500 /500.php 

И ваша проблема решена только займет 5 секунд, чтобы осуществить это, то просто обновите ваш сайт :)

+0

Он попросил, чтобы блокировать некоторые страницы, а затем перенаправляет .the выше код для страницы не найдено. –

0

Используйте это одна линия подходит вам, .htaccess

1 вкладыш mod_alias на основе решения:

RedirectMatch 403 ^/папки/file.php $

здесь папка путь, в котором файл существует, если не в папке, то используйте этот код

1 лайнер mod_alias решение на основе:

RedirectMatch 403 ^/file.php $

второй параметр file.php, который находился в файле, который вы хотите запретить доступ, будет перенаправлен на 404 в конце концов :)

Смежные вопросы