nginx php 防止跨站,Nginx下多网站单独php-fpm进程目录权限防跨站
Nginx下开多个虚拟机网站防跨站是首要的任务,PHP5.3之前的版本不支持open_basedir,只能通过控制PHP-cgi进程及目录用户权限进行限制,防止跨站访问。
先了解一下网站正常运行所用到的用户、目录权限:
Nginx进程运行用户:接收用户请求,处理静态文件,如果是PHP则转给PHP-CGI处理,网站目录拥有读权限。
PHP-cgi进程用户:处理PHP文件,网站目录拥有读权限,个别目录需要写入权限。
让每个网站使用单独的PHP-CGI进程,创建PHP-FPM配置文件,修改以下:/usr/local/php/logs/php-fpm.pid
/usr/local/php/logs/php-fpm.log
/tmp/www.haiyun.me.sock
www.onovp.com #PHP-CGI运行用户组
www.haiyun.me
启动PHP-CGI进程:/usr/local/php/bin/php-cgi --fpm --fpm-config /usr/local/php/etc/www.haiyun.me.conf
设置网站目录权限,设Nginx运行用户为www:chown -R www.haiyun.me:www /home/wwwroot/www.haiyun.me
chmod -R 550 /home/wwwroot/www.haiyun.me
chmod 701 /home/wwwroot/
再修改Nginx网站配置文件,解析PHP所使用的PHP-CGI进程:location ~ .*\.(php|php5)?$
{
fastcgi_pass unix:/tmp/www.haiyun.me.sock;
fastcgi_index index.php;
include fcgi.conf;
}
php-cgi进程简单管理脚本:#! /bin/sh
# chkconfig: 2345 55 25
#https://www.haiyun.me
cgi=/usr/local/php/bin/php-cgi
case "$1" in
start)
for conf in `ls /usr/local/php/etc/*.conf`
do
$cgi --fpm --fpm-config $conf
done
;;
stop)
for pid in `ls /usr/local/php/logs/*.pid`
do
kill -TERM `cat $pid`
done
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac
nginx php 防止跨站,Nginx下多网站单独php-fpm进程目录权限防跨站相关推荐
- Nginx一把梭完:防盗链、动静分离、高可用、压缩、跨域、缓存等
一.Nginx概念浅析 Nginx是一个轻量级的高性能HTTP反向代理服务器,同时它也是一个通用类型的代理服务器,支持绝大部分协议,如TCP.UDP.SMTP.HTTPS等. Nginx是基于多路复用 ...
- nginx【nginx跨域、nginx开启gizp压缩、nginx服务器部署项目】
nginx是一个高性能的HTTP和反向代理服务器,它使用配置文件决定如何提供内容.要监听的端口等.因此常用来做静态资源服务器和后端的反向代理服务器. 安装:brew install nginx 启动: ...
- CentOS7下启动Nginx出现Failed to start nginx.service:unit not found
错误的原因就是没有添加nginx服务,所以启动失败. 解决方法: 1. 在/root/etc/init.d/目录下新建文件,文件名为nginx 或者用命令在根目录下执行:# vim /etc/i ...
- 在centos下启动nginx出现Failed to start nginx.service:unit not found
错误的原因就是没有添加nginx服务,所以启动失败. 解决方法: 1. 在/root/etc/init.d/目录下新建文件,文件名为nginx 或者用命令在根目录下执行:# vim /etc/i ...
- linux系统安装nginx步骤,虚拟机(linux)下安装nginx的步骤教程
原标题:虚拟机(linux)下安装nginx的步骤教程 一.虚拟机准备: [root@localhost 桌面]# vi /etc/sysconfig/network-s/ifcfg-eth0 DEV ...
- centos nginx不是命令_虚拟机下Centos 8.0 安装PHP+Mysql+Nginx
按照此教程,我成功安装了环境,作心得记录. 第一步:安装nginx 推荐教程:http://nginx.org/en/linux_packages.html#RHEL-CentOS 1.安装必备必备工 ...
- Centos 7下安装nginx,使用yum install nginx,提示没有可用的软件包(亲测)
Centos 7下安装nginx,使用yum install nginx,提示没有可用的软件包. 18 (flaskApi) [root@67 flaskDemo]# yum -y install n ...
- 【Nginx】Nginx在Windows、Linux环境下的下载安装详细步骤
文章目录 Nginx下载安装 Nginx-windows安装 下载 安装 启动 Nginx-Linux安装 下载 准备 安装 启动 检查 Nginx常用命令 Nginx下载安装 Nginx跨平台,在w ...
- Linux下玩转nginx系列(二)——nginx配置文件说明
nginx 文件结构 # main全局块events { #events块... }http #http块 {... #http全局块server #server块{ ... #server全局块lo ...
最新文章
- 示廓灯——也就是前后位置等开启方法 还有该死的刮水器是长这样的
- [转]VC++中对文件的写入和读取
- code css怎么拿不到div_不会“编程”拿不到初中毕业证?听北京海淀教委怎么说...
- mysql两者之间_Django和MySQL - 两者之间的数据是不同的
- Arduino笔记-流水点灯
- 浅谈前端自动化构建 -- Grunt、Gulp、FIS
- jmeter debug sample不在查看结果树中显示_Jmeter线程组间传递参数
- Js获取处理日期时间
- 金蝶连服务器显示演示版,金蝶正版和金蝶演示版的区别
- continous attractor neural networks - 连续吸引子网络(ing)
- 计算机中二进制转十进制怎么算,二进制转十进制怎么算?二进制转十进制公式及方法!...
- dva的state引用及connect连接
- 阅读 | 皮囊与灵魂
- win7下l2pt/sec 的789报错解决
- 黑客入门常用的8种工具
- Revit建模:使用技巧【软件操作类】希望能帮大家提高效率(上)
- 互联网日报 | 4月1日 星期四 | 华为2020年收入8914亿元;滴滴拿下消费金融牌照;HM已在中国关闭约20家门店...
- Ecall测试,ITU-T P.1140 车载紧急呼叫系统语音测试
- arcgis地图开发测面、测距、定位小工具
- ROS入门:运行小海龟
热门文章
- mysql语句怎么记_Mysql常用语句(记一下,免得忘)
- 矩阵分析理论在实际工程中的应用_【顶管技术在市政给排水工程中的应用分析】...
- Linux防火墙屏蔽ip6,观点|Linux 发行版们应该禁用 IPv4 映射的 IPv6 地址吗?
- micropython用什么编译_micropython开发者指南
- linux修改services命令,Linux中service指令都有哪些参数
- 画直线_在鸡面前画一条直线,为什么它会晕?西瓜视频这知识好冷告诉答案
- anaconda中安装xgboost_Anaconda是什么?Anconda下载安装教程 - python基础入门(16)
- 火狐浏览器怎么关闭自动更新 火狐浏览器关闭自动更新的方法
- CSS 让数字滑动显示
- java用XSSFWorkbook实现读写Excel