NGINX: возврат 403 в файлах .php

Я пытаюсь обслуживать статические файлы из установки Wordpress и использую символическую ссылку, помещенную в папку NGINX, указывающую на папку wp-content/uploads.

Каждый файл обслуживается правильно, но, к сожалению, есть некоторые плагины, которые включают некоторые из своих файлов .php в эту папку, поэтому NGINX обслуживает их как статические файлы, что приводит к потенциальным угрозам безопасности.

Есть ли способ указать NGINX возвращать ошибку Forbidden 403 при попытке доступа к файлам .php?

Заранее спасибо.


person Daniel Garcia    schedule 20.09.2011    source источник


Ответы (1)


Вы можете исключить расширение под блоком местоположения, используя дополнительное местоположение

E.G.

location /wp-content/uploads {
    location ~ \.(php|any|other|ext)$ {
        return 403;
    }

    ....

}
person Dayo    schedule 20.09.2011
comment
спасибо за Ваш ответ! нубский подвопрос, мне просто добавить его в файл .htaccess? Это не сработало для меня таким образом. - person Daniel Garcia; 21.09.2011
comment
Nginx не использует файлы htaccess. Вы добавляете вышеуказанное в файл конфигурации nginx для рассматриваемого сайта и перезагружаете nginx. - person Dayo; 21.09.2011