Запретить использование ip адреса в URL

igor.goncharenko nginx-forum на nginx.us
Пт Ноя 11 12:28:12 UTC 2011


Hi!
Мне нужно запретить пользователям
ходить по ip адресам вместо доменных
имен в urlе.
Я сделал так:

 server
  {
   listen                local.com:80;
{skip}

if ( $host ~ "\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b" ) { return 418; }
error_page 418 =403 @418;

location @418 {
root   /usr/local/www/error_pages/access-denied/;
rewrite $(.*)$ /custom_deny.html break;
     }

теперь клиенту выдается страница
custom_deny.html с ошибкой 403.В общем, это и
хотелось.
Вопрос по if. Правильно ли его
использовать здесь или как-то можно по
другому проверять $host на соответствие
ip-адресу?


---
Igor

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,218207,218207#msg-218207



Подробная информация о списке рассылки nginx-ru