用户名:
密 码: 记住
您当前的位置:首页 > 站长百科 > 服务器技术

linux中nginx下禁止某目录执行php例子

时间:2015-01-23  来源:西部数据  作者:西部数据

以前我写过很多关于禁止执行php的文件,今天在查看一站长博客时发现它发了一文章就按要求设置之后所有目录的所有目录都不能执行了,所以我就来研究了一下,下面是解决办法.

我们禁止整个站点不能执行php文件,代码如下:

  1. # location ~ ^/.*\.(php|php5)$ 
  2. # { 
  3. # fastcgi_pass 127.0.0.1:9000; 
  4. # fastcgi_index index.php; 
  5. # include fcgi.conf; 
  6. # deny all
  7. # } 

配置文件中加上这行!如果需要指定某个目录的话,在第一行location ~^/(目录|目录1)\.(php|php5)$有多个目录的时候可用|分开,禁止单目录,代码如下:

  1. location ~ /attachments/.*.(php|php5)?$ { 
  2. deny all
  3.  
  4. --禁止多目录: 
  5.  
  6. location ~ /(attachments|upload)/.*.(php|php5)?$ { 
  7. deny all

经测试貌似没用?会把目录内其他文件都屏蔽不能访问。比如upload里面的图片都不能访问了 这个是什么问题呢,再仔细看了一下发现原来是少了一个^号,太粗心了。

解决办法,禁止单目录,代码如下:

  1. location ~^ /attachments/.*.(php|php5)?$ { 
  2. deny all
  3.  
  4. --禁止多目录: 
  5.  
  6. location ~^ /(attachments|upload)/.*.(php|php5)?$ { 
  7. deny all;  --phpfensi.com 

这样就搞定了.

来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
    无相关信息
栏目更新
栏目热门