建议将网站目录的PHP权限去掉,当访问上传目录下的php文件时就会返回403错误。下面VPS侦探详细介绍如何把lnmp环境下去掉指定目录的PHP执行权限。
首先要编辑nginx的虚拟主机配置,在fastcgi的location语句的前面按下面的内容添加:
1、单个目录去掉PHP执行权限
代码如下 | 复制代码 |
location ~ /attachments/.*.(php|php5)?$ { deny all; } |
将attachments目录的PHP执行权限去掉。
2、多个目录去掉PHP执行权限
代码如下 | 复制代码 |
location ~ /(attachments|upload)/.*.(php|php5)?$ { deny all; } |
将attachments、upload这二个目录的PHP执行权限去掉。
附上一个完整的虚拟主机的例子供参考:
代码如下 | 复制代码 |
server { listen 80; server_name bbs.vpser.net; index index.html index.htm index.php; root /home/wwwroot/bbs.vpser.net;include discuz.conf; location ~ /(attachments|upload)/.*.(php|php5)?$ { deny all; } location ~ .*.(php|php5)?$ { fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php; include fcgi.conf; } access_log off; |
添加完执行:/usr/local/nginx/sbin/nginx -t测试配置文件,执行:/usr/local/nginx/sbin/nginx -s reload 载入配置文件使其生效
时间: 2024-10-04 23:45:50