如果phpmyadmin中没有错误,则无法启动会话

ergxz8rk  于 2021-10-10  发布在  Java
关注(0)|答案(19)|浏览(454)

当将浏览器指向phpmyadmin时,我得到以下错误
如果没有错误,则无法启动会话。请检查php和/或Web服务器日志文件中给出的错误,并正确配置php安装。
我已经检查了所有的东西,似乎不知道问题出在哪里。
在我的php.ini文件中,我有:

session.save_path = "/var/lib/php/session"

权限:

drwxr-xr-x  2 root apache 4096 Feb 16 04:47 session

似乎什么都不管用。甚至将会话目录上的权限更改为777。

ep6jt1vc

ep6jt1vc1#

问题通常出现在浏览器端。
您需要刷新浏览器缓存,删除服务器/主机的Cookie,然后重试加载phpmyadmin。
如果您想全力以赴,还可以清除服务器上的会话文件夹。
一个可能的原因是浏览器和Web服务器之间的会话数据不匹配,导致它无法提取所需的会话信息,并将此错误对话框转储到您的膝上。

zvokhttg

zvokhttg2#

问题可能是由于文件和文件夹权限造成的;您可以尝试更改文件夹权限:

sudo chmod 777 /var/lib/php/session/

这将设置php会话文件夹的完全读/写权限。
注:该 php/session/ 在某些服务器上,文件夹可能位于不同的位置。检查你的 php.ini 用于会话路径。

tzcvj98z

tzcvj98z3#

在我的情况下,这是错误的所有权 /var/lib/php/session . 我将其更改为apache用户和组(Web服务器作为其运行的用户和组),一切正常。

yqkkidmi

yqkkidmi4#

设定 session.save_path 在你的 php.ini . 确保您使用的是现有目录。
如果仍然发现任何问题,则为要使用该文件夹的用户授予该文件夹的写入和执行权限。[这在iis中特别使用]

wtlkbnrh

wtlkbnrh5#

停止777!

如果您使用nginx(像我一样),只需更改下文件夹的所有权即可 /var/lib/php/ 从…起 apachenginx :

[root@centos ~]# cd /var/lib/php/
[root@centos php]# ll
total 12
drwxrwx---. 2 root apache 4096 Jan 30 16:23 opcache
drwxrwx---. 2 root apache 4096 Feb  5 20:56 session
drwxrwx---. 2 root apache 4096 Jan 30 16:23 wsdlcache

[root@centos php]# chown -R :nginx opcache/
[root@centos php]# chown -R :nginx session/
[root@centos php]# chown -R :nginx wsdlcache/
[root@centos php]# ll
total 12
drwxrwx---. 2 root nginx 4096 Jan 30 16:23 opcache
drwxrwx---. 2 root nginx 4096 Feb  5 20:56 session
drwxrwx---. 2 root nginx 4096 Jan 30 16:23 wsdlcache

以及下面的文件夹 /var/lib/phpMyAdmin/ :

[root@centos php]# cd /var/lib/phpMyAdmin
[root@centos phpMyAdmin]# ll
total 12
drwxr-x---. 2 apache apache 4096 Dec 23 20:29 config
drwxr-x---. 2 apache apache 4096 Dec 23 20:29 save
drwxr-x---. 2 apache apache 4096 Dec 23 20:29 upload

[root@centos phpMyAdmin]# chown -R nginx:nginx config/
[root@centos phpMyAdmin]# chown -R nginx:nginx save/
[root@centos phpMyAdmin]# chown -R nginx:nginx upload/
[root@centos phpMyAdmin]# ll
total 12
drwxr-x---. 2 nginx nginx 4096 Dec 23 20:29 config
drwxr-x---. 2 nginx nginx 4096 Dec 23 20:29 save
drwxr-x---. 2 nginx nginx 4096 Dec 23 20:29 upload
brqmpdu1

brqmpdu16#

出现此错误的常见原因有两个,一个与服务器配置和session.save_路径有关,另一个与浏览器缓存有关。
如果遇到此错误,请尝试使用其他浏览器或计算机,然后再尝试更改服务器上的apache和php配置!
请注意,仅清除服务器的cookies是不够的,您需要清除缓存。
在firefox中,清除所有历史记录和cookie很容易,但您可能不想清除所有内容。清除缓存隐藏在firefox中:
工具>选项>高级>网络:缓存的web内容-立即清除

nxowjjhe

nxowjjhe7#

好啊
我正在使用Windows7Ultimate和WAMP2.4服务器,tmp文件夹丢失了,所以我创建了一个,这解决了我的问题。检查php.ini文件中的正确路径:session.save_path

pobjuy32

pobjuy328#

如果会话文件夹不可写,则登录失败。要检查这一点,请使用以下命令在web目录中创建一个php文件:

<?php
$sessionPath = 'undefined';

if (!($sessionPath = ini_get('session.save_path'))) {
    $sessionPath = isset($_ENV['TMP']) ? $_ENV['TMP'] : sys_get_temp_dir();
}

if (!is_writeable($sessionPath)) {
    echo 'Session directory "'. $sessionPath . '"" is not writeable';
} else {
    echo 'Session directory: "' . $sessionPath . '" is writeable';
}

如果会话文件夹不可写,请执行以下操作 sudo setfacl -R -m u:www-data:rwx <session directory>chmod 777 <session directory> -

ijnw1ujt

ijnw1ujt9#

对于xampp,从“根”文件夹中删除临时文件对我来说很有用。
th

xxhby3vn

xxhby3vn10#

第一:如果没有 session dir(就我而言是)

sudo mkdir /var/lib/php/session

第二:设置权限 session 迪尔

sudo chmod 777 /var/lib/php/session
axzmvihb

axzmvihb11#

我花了整整一天的时间研究这个问题。对我来说,答案就是清除浏览器的缓存。太糟糕了,我已经重新安装了3次webserver/phpmyadmin:(

wfypjpf4

wfypjpf412#

我清除了浏览器缓存。已创建phpinfo.php中列出的会话文件夹。
成功了!

lvmkulzt

lvmkulzt13#

知道这个线程被标记为已解决,它会在google搜索给定术语的早期出现。因此,我认为提及可能导致此错误的另一个原因可能是有用的。
如果您启用了“安全/安全cookies”,则必须为phpmyadmin禁用该功能,因为它无法在激活它们时工作。因此,请确保您没有以下情况:

Header set Set-Cookie HttpOnly;Secure

在您的配置中。

tjjdgumg

tjjdgumg14#

问题也可能是你有一个错误的答案 session.save_handler 你的价值 php.ini . 当我把它改成 memcached ,并在切换回时再次工作 files

vfhzx4xs

vfhzx4xs15#

我在windows server 2016中发现的问题是,php使用的临时目录的权限错误。我加了iusr。

相关问题