我在 Centos 8 上安装了一个 Nginx Web 服务器,在 Nginx 配置中启用以 HTML 执行 PHP 后,我突然无法登录到安装的某些脚本,例如 FileRun 或 ProjectSend 或我创建的简单 PHP 表单,我得到的是当我输入正确的登录信息,网页重新加载,登录后不会重定向到主页或下一页,我尝试按原样恢复所有内容,但仍然无法正常工作。我为启用 HTML 中的 PHP 执行所做的操作是将此行位置 ~ .php$ 更改为位置 ~ .(php|html|htm)$ {之后我转到 /etc/php-fpm/www.conf 并添加此行 security.limit_extensions =重新启动 Nginx 和 PHP-FPM,PHP 在 HTML 中工作正常这是我对 Nginx 服务器和我使用的完整 Nginx 配置所做的最后一次更改server { listen 80; server_name mydomain.com www.mydomain.com; return 301 https://$host$request_uri;}server { server_name mydomain.com www.mydomain.com; root /home/mydomain/public_html; index index.html index.htm index.php; access_log /var/log/virtualmin/mydomain.com_access_log; error_log /var/log/virtualmin/mydomain.com_error_log; client_max_body_size 4096M; fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SCRIPT_FILENAME /home/mydomain/public_html$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT /home/mydomain/public_html; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; fastcgi_param HTTPS $https; location ~ \.(php|html|htm)$ { try_files $uri =404; fastcgi_pass unix:/run/php-fpm/www.sock; }我从 Firefox 开发工具(网络)得到的是 2 个带有状态的请求302 Found,然后它重定向到相同的 index.php,并且不会让我在登录后进入主页。我不知道发生了什么,但我真的陷入了困境,找不到解决方案,有什么建议吗?
1 回答
忽然笑
TA贡献1806条经验 获得超5个赞
我通过让/var/lib/php
文件夹授予0777
权限解决了这个问题我不知道是什么让它突然改变了权限,但是这个文件夹包含session
导致问题的文件夹名称使这个文件夹不可写使网络应用程序不保存会话所以它不记录会话和cookie,这就是为什么没有登录被重定向到主仪表板..
- 1 回答
- 0 关注
- 77 浏览
添加回答
举报
0/150
提交
取消