作者亲测,需要更改php源程序后,重新编译php。在使用fpm方式安装时,打补丁过程中会修改php的文件,所以需要在打完fpm补丁后再修改php源程序。
tar zxvf php-5.2.14.tar.gz
gzip -cd php-5.2.14-fpm-0.5.14.diff.gz | patch -d php-5.2.14 -p1
cd php-5.2.14/
| 代码如下 | 复制代码 |
|
vi main/fopen_wrappers.c
// 添加的内容开始 char *env_document_root = sapi_getenv("DOCUMENT_ROOT", sizeof("DOCUMENT_ROOT")-1 TSRMLS_CC); // 添加的内容结束 pathbuf = estrdup(PG(open_basedir)); ptr = pathbuf; while (ptr && *ptr) { if (php_check_specific_open_basedir(ptr, path TSRMLS_CC) == 0) { ptr = end; /* Nothing to check... */ |
|
在5.3.3以上已经增加了HOST配置,可以起到防跨站、跨目录的问题。如果你是PHP 5.3.3以上的版本,可以修改/usr/local/php/etc/php.ini在末尾里加入:
| 代码如下 | 复制代码 |
|
|
|
然后重启nginx和php-fpm
然后用中国菜刀等工具测试即可发现Nginx已经支持防跨站
小提示,如果你网站没有大量的流量或html静态页面,我还是建义你使用apache来实配置网站,这样就不存在此问题了。
DeepSeek多模态怎么样及保姆级配置教程(codex、claude)实用指南
WSL2+Docker+Ollama本地部署大模型思路和实践指南(Qwen1.8b)实用指南
DeepSeek Harness热门插件盘点:10个实用插件,覆盖多Agent、上下文和多模态实用指南
grep文本搜索与正则表达式完整代码示例实用指南
AI漫剧伪装直男1‑24集无雾版夸克网盘资源免费分享
AI漫剧玉僧入尘1-68集无雾无删版夸克网盘资源免费分享