Тема: mysql + .htaccess
Показать сообщение отдельно

  #21  
Старый 10.04.2012, 03:57
Cennarios
Участник форума
Регистрация: 13.07.2008
Сообщений: 101
Провел на форуме:
346497

Репутация: 303
По умолчанию

Цитата:
Сообщение от Pirotexnik  
Да, там связка, все верно! Но несмотря на это, на 80 порту не работает, на 81 работает.
Почему?
Потому что, как я и говорил, запрос сначала попадает на nginx. А там , взгляни внимательно на конфиг, идет определенный перечень правил, на основании которых запрос трансформируется необходимым образом. Взять хотя бы кусок конфига:

location /members/ {

location ~ \.(php|php3|php4|php5)$ {

deny all;

}

Сия конструкция запрещает выполнение скриптов с расширениями php|php3|php4|php5 в директории(или по линку) /members для любого IP в заголовке запроса.

Естественно, скрипты и не будут выполняться. Но если же обратиться на 81 порт на котором висит апач - site:81/members/script.php то скрипт успешно выполнится. Потому как запрос непроходит через ряд правил nginx'a а идет напрямую в backend.

Суть заключается именно в этом. Вообще, нормальный админ фиксит доступ к backend напрямую для внешней сети.
 
Ответить с цитированием