PHP会话无法在Docker上运行

mnowg1ta  于 2023-02-11  发布在  Docker
关注(0)|答案(1)|浏览(126)

我正在尝试设置一个PHP应用程序,但似乎会话处理有问题。

正如您所看到的,配置是非常标准的。我检查了容器中的/tmp权限,并获得了

root@2217e6d458ad:/# ls -ld /tmp
drwxrwxrwt 1 root root 4096 Dec 28 08:03 /tmp

我还在运行时检查了以下代码段:

$file = fopen('/tmp/foo.log', 'w');
fwrite($file, 'test'.PHP_EOL);
fclose($file);
echo 'path: '. session_save_path().'<br>';
var_dump(is_writable(session_save_path()));

现在,文件/tmp/foo.log已创建,path为空,但var_dump结果为bool(false)
我还应该检查什么??

0pizxfdo

0pizxfdo1#

这种情况与我相同,我确实修复了它,我使用了bitnami存储库codeigniter图像
如果你同意我的话,你可以在dockerfile上添加这个命令

RUN echo "session.save_path=\"/tmp\"" >> /opt/bitnami/php/lib/php.ini

或者可以在php容器内核终端上键入

#$ echo "session.save_path=\"/tmp\"" >> /opt/bitnami/php/lib/php.ini
  • /opt/bitnami/php/lib/php.ini* 是php配置文件的文件夹,您可以在浏览器上运行时检查php.ini文件在哪里
<?php phpinfo() ?>

你可以在https://hub.docker.com/r/ranur/codeigniter上检查和运行我的图像

相关问题