为了账号安全,请及时绑定邮箱和手机立即绑定

Nginx和PHP:没有写入权限

Nginx和PHP:没有写入权限

PHP
长风秋雁 2022-08-05 09:51:14
我在Ngnix上运行的PHP应用程序(贝加尔湖)有问题。应用程序对其某个配置文件没有(不再)写入权限。升级 PHP 后,可能会出现此问题。以下是有关我的设置的一些信息:操作系统: Arch LinuxNginx 版本: 1.16.1Nginx user: httpPHP 版本: 7.4.1应用: 贝加尔湖 0.4.6Nginx 配置:  server {       listen              443 ssl http2;       listen              [::]:443 ssl http2;       server_name         –––––––––;       root                /usr/share/webapps/baikal/html;       index               index.php;       include             include/ssl.conf;       include             include/letsencrypt.conf;       rewrite ^/.well-known/caldav /dav.php redirect;       rewrite ^/.well-known/carddav /dav.php redirect;       charset utf-8;       location ~ /(\.ht|Core|Specific) {          deny all;          return 404;       }       location ~ ^(.+\.php)(.*)$ {          try_files $fastcgi_script_name =404;          include        /etc/nginx/fastcgi_params;          fastcgi_split_path_info  ^(.+\.php)(.*)$;          fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;          fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;          fastcgi_param  PATH_INFO        $fastcgi_path_info;       }    }应用程序报告文件 Specific/config.php 不可写。完整路径为 /usr/share/webapps/baikal/Specific/config.php。出于测试目的,我已将文件的权限设置为777;没有成功。我测试了PHP函数。它将返回该文件。 表示文件系统是只读的(它不是)。is_writablefalsefopen我读过很多关于 SELinux 防止写入操作的文章,但正如我所说,我使用的是 Arch Linux,它不是 SELinux。我认为这与PHP不允许在Nginx中的根目录集之外写入的事实有关,但我无法修复它。任何人都可以帮忙吗?
查看完整描述

1 回答

?
至尊宝的传说

TA贡献1789条经验 获得超10个赞

好吧,钉好了。皮尤。

从 PHP 7.4 开始,PHP-FPM 通过挂载 、 和 只读目录来保护系统。/usr/boot/etc

这篇文章这个问题导致我找到了解决方案,只需将应用程序文件夹移出./usr


查看完整回答
反对 回复 2022-08-05
  • 1 回答
  • 0 关注
  • 246 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信