nginx没有像apche open_basedir限制脚本的目录 如果多人共同使用 可以很容易被跨目录
可以用php-fpm的端口来限制脚本跳转 参考网上方法
比如 itxti.net这个用9002端口
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9002;
fastcgi_index index.php;
include fcgi.conf;
}
另外站用:
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9001;
fastcgi_index index.php;
include fcgi.conf;
}
mkdir 一个vhost目录来存放每个网站对应的php-fpm的配置文件
cp ./php-fpm.conf ./vhost/itxti.conf
在<value name="php_defines">处加入
<value name="open_basedir">/www/web/itxti:/tmp:/var/tmp</value>
并修改端口
<value name="listen_address">127.0.0.1:9002</value>
其他的站点根据在nginx虚拟主机里的配置的端口一样配置即可
还有一点就是进程数要限制下 <value name="max_children">5</value> 或者更大更小 更加主机内存看搞
最后就加载php-fpm配置
修改php-fpm启动脚本
注释掉#php_fpm_CONF=/www/php/etc/php-fpm.conf
#php_opts="--fpm-config $php_fpm_CONF"
找到脚本 start语句出 就如我们针对每个网站的php-rpm配置
$php_fpm_BIN --fpm --fpm-config /www/php/etc/vhost/xxxx.conf
$php_fpm_BIN --fpm --fpm-config /www/php/etc/vhost/xxx2.conf
$php_fpm_BIN --fpm --fpm-config /www/php/etc/vhost/itxti.conf
跳转失败