Apache Nginx 禁止目录执行PHP脚本文件的方法
我们在搭建网站的时候,可能需要单独对一些目录进行设置权限,以达到我们需要的安全效果。下面举例说明在Apache或Nginx下如何设置禁止某个目录执行php文件。
1.Apache配置
<Directory /apps/web/renwole/wp-content/uploads> php_flag engine off </Directory> <Directory ~ "^/apps/web/renwole/wp-content/uploads"> <Files ~ ".php"> Order allow,deny Deny from all </Files> </Directory>
2.Nginx配置
location /wp-content/uploads { location ~ .*\.(php)?$ { deny all; } }
Nginx禁止多个目录执行PHP:
location ~* ^/(css|uploads)/.*\.(php)${ deny all; }
配置完成后,重载配置文件或重启Apache或Nginx服务,之后所有通过uploads来访问php文件,都将返回403,大大地增加了web目录安全性。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Linux下创建nginx脚本-start、stop、reload…
1.关闭nginx 利用ps -aux | grep nginx 查看nginx是否启动 如果启动了就kill杀死 2.创建/etc/init.d/nginx文件 root@dnnp:~/software/nginx-1.2.3# vim /etc/init.d/nginx 3.添加权限并启动 root@dnnp:~/software/nginx-1.2.3# chmod +x /etc/init.d/nginx root@dnnp:~/software/nginx-1.2.3# /etc/in
-
shell脚本定时统计Nginx下access.log的PV并发送给API保存到数据库
1,统计PV和IP 统计当天的PV(Page View) cat access.log | sed -n /`date "+%d\/%b\/%Y"`/p |wc -l 统计某一天的PV cat access.log | sed -n '/20\/Sep\/2018/p' | wc -l 查看日志中访问次数最多的前10个IP cat access.log.1 |cut -d ' ' -f 1 | sort |uniq -c | sort -nr | awk '{print $0 }' |
-
Nginx中使用Lua脚本配置示例
先配置nginx 复制代码 代码如下: location ~ .*\.(php|php5)?$ { if ($request_uri ~ "one/test") { access_by_lua_file /opt/nginxrw/lua/limiturl.lua; } fastcgi_pass 127.0.0.1:9000;
-
Nginx和PHP-FPM的启动、重启、停止脚本分享
服务器上的Nginx和PHP都是源码编译安装的,不像ubuntu一样有自带service启动脚本,所以不支持类似以前的nginx (start|restart|stop|reload)了.自己动手丰衣足食.以下脚本应该在RHEL, Fedora, CentOS下都适用. 一.Nginx启动脚本/etc/init.d/nginx 复制代码 代码如下: #!/bin/bash # # Startup script for Nginx - this script starts and stops th
-
在ubuntu下为nginx配置支持cgi脚本的方案
在nginx下支持cgi脚本于支持node类似的,只要在nginx直接做个转发,转发到对应的cgi套接字就好. 使用Fcgiwrap Fcgiqwrap是另外一个CGI封装库,跟Simple CGI类似. 安装fcgiwrap apt-get install fcgiwrap 安装以后fcgiwrap默认已经启动,对应的套接字是 /var/run/fcgiwrap.socket .如果没有启动,使用 /etc/init.d/fcgiwrap 手动启动. 配置nginx的vhost文件 在要支持c
-
PHP脚本监控Nginx 502错误并自动重启php-fpm
最近服务器时不时出现Nginx 502 Bad Gateway,如果在电脑旁边还好,要是半夜或者出去了,怎么办? 没关系,写个脚本检测服务状态,发现异常,自动重启. 自动重启脚本: 复制代码 代码如下: <?php $url = 'http://blog.rebill.info'; $cmd = '/usr/local/php/sbin/php-fpm restart'; for($i = 0; $i < 5; $i ++){ $exec = "curl con
-
nginx源码分析configure脚本详解
nginx源码分析--configure脚本 一.前言 在分析源码时,经常可以看到类似 #if (NGX_PCRE) .... #endif 这样的代码段,这样的设计可以在不改动源码的情况下,通过简单的定义宏的方式来实现功能的打开与关闭,但是在nginx/src目录下始终没有找到宏 NGX_PCRE 对应的 #define 语句. 在之前介绍event模块的时候,讲到init_cycle函数中对cycle进行了初始化,其中很重要一步操作就是讲包含所有module信息的数组拷贝到这个cycle对应
-
使用shell脚本对Nginx日志进行切分的示例代码
本文介绍了使用shell脚本对Nginx日志进行切分的示例代码,分享给大家,具体如下: 1.日志格式 默认的日志格式: main log_format main '$remote_addr - $remote_user [$time_local] "$request" ' $status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_f
-
详解Nginx SSL快速双向认证配置(脚本)
目前遇到一个项目有安全性要求,要求只有个别用户有权限访问.本着能用配置解决就绝不用代码解决的原则,在Nginx上做一下限制和修改即可. 这种需求其实实现方式很多,经过综合评估考虑,觉得SSL双向认证方案对用户使用最简单,遂决定用此方案. 注: 本方案在Ubuntu Server 16.04 LTS实施,其他操作系统请酌情修改 SSL双向认证 绝大多数SSL应用都以单向认证为主,即客户端只要信任服务端,就可以使用服务端的公钥加密后向服务端发起请求,由服务端的私钥解密之后获得请求数据. 如果这个过程
-
shell脚本之nginx自动化脚本
这个脚本,可以满足nginx开启,停止和重启的操作 #!/bin/bash . /etc/init.d/functions function usage() { echo $"usage:$0 {start|stop|restart}" exit 1 } function start() { /usr/local/nginx/sbin/nginx sleep 1 if [ `netstat -antlpe | grep nginx | wc -l` -ge 0 ];then actio
随机推荐
- angular.js指令中的controller、compile与link函数的不同之处
- ORACLE SQL语句优化技术要点解析
- js控制fieldset高度的代码
- asp.net DataGrid控件中弹出详细信息窗口
- Ubuntu下安装redis的2种方法分享
- 详解Vue组件之间的数据通信实例
- java servlet结合mysql搭建java web开发环境
- MYSQL 关于两个经纬度之间的距离由近及远排序
- ajax提交加载进度条示例代码
- JSP技术简介
- android 网络编程之网络通信几种方式实例分享
- innerhtml用法 innertext用法 以及innerHTML与innertext的区别
- 基于spring+hibernate+JQuery开发之电子相册(附源码下载)
- asp.net 编辑gridview的小例子
- Android HTTP网络请求的异步实现
- android短信监听工具(示例代码)
- django站点管理详解
- 浅谈Mybatis乐观锁插件
- PyQt5每天必学之切换按钮
- 在vue中v-bind使用三目运算符绑定class的实例