Chevereto 无法登录显示[请求被拒绝,您或者没有权限访问此页面]的解决办法
前言
作为一篇解决类的文章,这里首先说一下大概的事情经过,方便后来者对照自己的实际情况做出判断
原因就是我重启了服务器…
就是这么简单,然后登录自己的Chevereto图床的时候发现在密码和用户名保证正确的情况下
请求被拒绝
您或者没有权限访问此页面
然后Google了一圈英文圈之后(因为中文圈没有这个的解答)给出下面的解答方式
验证是否为session配置错误
我们首先打开我们自己的Chevereto的网站,然后按F12打开调试工具
之后找到console这个界面之后
输入一下内容
PF.obj.config.auth_token
之后就会出来一串随机的字符串,我们按F5刷新这个页面之后,再次执行
PF.obj.config.auth_token
如果你注意到这两个随机的字符串是不同的话,那么问题就在于你的服务器没有正确处理session,所以如果你这里确定了这个,我们接下来就可以解决这个问题了(因为Chevereto新版本已经加入了CSRF的防范措施)
解决
这里是我们的php没有做好session的处理,也就是我们的php配置有点问题
在这之前,我们先确定你的Chevereto的安装目录下已经用了正确的组和用户权限,如你的中间件是apache的话,组和用户设置应该是是apache:apache,如果是nginx的话,应该为nginx:nginx
注,所有文件都应该为这个组权限
如果你不放心或者不好检查的话可以这样做
apache
chown -R apache:apache /var/www/html
这里假设你的网站安装目录在/var/www/html,如不是,请改成对应的目录
nginx
chown -R nginx:nginx /var/www/html
然后我们修改/etc/php-fpm.d下的www.conf,这里我们的中间件假设为nginx,如果是apache的话,这一步可以打开确认一下
我们打开这个文件
;user = apache
user = nginx;group = apache
group = nginx
找到这个地方,这里配置文件是用;来做注释的,这里大家清除这一点,因为我们用的nginx,所以这里将user和group都修改为nginx,如果你是apache的话,确认这里的组和用户为apache,然后保存退出
之后重启php-fpm和nginx
systemctl restart php-fpm
systemctl restart nginx
之后我们来到这里
cd /var/lib/php
这里有个文件夹叫session
确保这个文件夹的用户和组为root:nginx,对应的apache以此类推
注:默认这个文件的权限是为root:apache
如果不是的话这样修改
chown :nginx session
然后我们进入session目录
确保这个目录下的session文件都是和你的中间件对应的
chown nginx:nginx *
注:这些文件默认都是apache:apache
然后做完这些,你的服务应该能正常登录了
本文完
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
