我已经在我的ded服务器上安装了phpmyadmin ,使用Nginx和MariaDB下的Centos 6.i可以用root用户falwlesslylogin到mariaDB cli,但是我不能通过phpmyadminlogin。 它显示我的第一个login页面phpmyadmin ,当我进入用户和通过,页面将刷新,但nothings发生,只有令牌添加在地址。 我已经使用静态链接为phpmyadmin文件夹和nginx根目录之间的链接.i应该说,其他的PHP页面加载完美无论如何,任何帮助将不胜感激。
答案不适合我。 但是我解决了另一种方式,我在这里为其他人编写解决scheme:在编辑器中打开phpmyadminconfiguration。 在centOS我做到了这一点:
nano /etc/phpMyAdmin/config.inc.php
然后find这一行:
... /* Authentication type */ $cfg['Servers'][$i]['auth_type'] = 'cookie'; ...
并将其更改为http :
... /* Authentication type */ $cfg['Servers'][$i]['auth_type'] = 'http'; ...
然后在您的网站上重新检查您的phpmyadminurl
处理了几个小时后,我发现session.save_path是一个非常重要的,所以我已经采取了几个步骤来检查它在一个空的PHP文件
1)从ini获取当前值
var_dump( ini_get('session.save_path') ); 。
结果对我来说是
string(20) "/var/lib/php/session"
2)现在我想知道如果我的PHP可以写在该文件夹,所以我去了
var_dump( is_writable( ini_get('session.save_path') ) );
结果是错误的。 这意味着控制我的php-fpm的用户不能写这个目录。
3)我在那个文件夹前面走了
/var/lib/php
检查他的主人
ls -all
结果是
drwxr-xr-x 4 root root 4096 Sep 17 15:21 . drwxr-xr-x 21 root root 4096 Sep 17 15:48 .. drwxrwx--- 2 root apache 4096 Sep 3 08:07 session drwxrwx--- 2 root apache 4096 Sep 3 08:07 wsdlcache
在这里,我只是注意到我的会话文件夹由apache控制。 但是,我的服务器上没有apache我与nginx运行。
解
让nginx成为这个文件夹的所有者
chown nginx session/
现在什么auth_type我使用无所谓,他们都工作
对于cookie身份validation,您需要对会话目录具有正确的访问权限。 确保在session.save_path phpvariables中定义的目录对于您的Web服务器是可写的。
PhpAdmin是否正确安装?
我build议重新安装它。 如果你不能login,那么这是第一次尝试新鲜。
在这样做后,更改phpadmin目录的权限(下面是一个一般的Linux www目录,如果不同,请检查并更改CentOS)
chmod -R 777 /var/www/phpmyadmin
打开浏览器并启动Phpadmin,查看是否可以login。
如果您有任何错误,请将其发回到您的问题中查看