- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试将我的 php session 保存在 ramdisk 上。我有权限问题,但我看不出问题出在哪里。
我有虚拟磁盘:
/dev/ram0 407M 2.4M 404M 1%/var/lib/php/session/ramd
我有权限:
drwxrwx---。 3 root apache 1024 Mar 24 01:53 ramd
我的错误:
警告:session_start(): open(/var/lib/php/session/ramd/sess_b0ko6hl3p6ojj2ot3qfqvm9km1, O_RDWR) failed: Permission denied (13) in/var/www/html/index.php on line 3警告:未知:打开(/var/lib/php/session/ramd/sess_b0ko6hl3p6ojj2ot3qfqvm9km1,O_RDWR)失败:第 0 行未知中的权限被拒绝(13)警告:未知:无法写入 session 数据(文件)。请验证 Unknown on line 0 中 session.save_path 的当前设置是否正确(/var/lib/php/session/ramd)
在 php.ini 中,session.save_path 变量设置为 "/var/lib/php/session"
"var/lib/php/session/ramd"
如果我卸载我创建的 ramdisk,我可以将我的 session 保存在/rand 文件夹中。它我安装..我不能。我还尝试了 chmod root:root/apache:apache 和 chmod 0777 1777。现在是 0770。
我使用:CentOS 6.4、PHP 5.3.3、Apache/2.2.15
谁能帮我解决这个问题??
乐:
[root@localhost ~]# ps aux | grep apache
apache 2355 0.0 0.4 394868 7840 ? S 01:53 0:00 /usr/sbin/httpd
apache 2356 0.0 0.4 394876 7844 ? S 01:53 0:00 /usr/sbin/httpd
apache 2357 0.0 0.4 394876 7824 ? S 01:53 0:00 /usr/sbin/httpd
apache 2358 0.0 0.4 394876 7816 ? S 01:53 0:00 /usr/sbin/httpd
apache 2360 0.0 0.4 394876 7900 ? S 01:53 0:00 /usr/sbin/httpd
apache 2361 0.0 0.4 394876 7800 ? S 01:53 0:00 /usr/sbin/httpd
apache 2362 0.0 0.4 394876 7844 ? S 01:53 0:00 /usr/sbin/httpd
apache 2363 0.0 0.4 394868 7716 ? S 01:53 0:00 /usr/sbin/httpd
root 3119 0.0 0.0 103248 868 pts/0 S+ 02:52 0:00 grep apache
[root@localhost ~]# ps aux | grep php
root 3132 0.0 0.0 103244 868 pts/0 S+ 02:54 0:00 grep php
最佳答案
执行以下命令查看 SELinux 是否处于强制模式:
# sestatus
如果是这样,您可能想通过以 root 身份(或使用 sudo)运行以下命令来尝试禁用 SELinux:
# setenforce 0
这将使 SELinux 停止执行任何策略。如果这解决了问题,您将不得不关闭 SELinux 或增加策略以允许此新路径正确运行。如果确实达到了这一点,请引用 https://serverfault.com/a/323528/165777有关如何执行该步骤的一些信息!
此外,如果这没有产生影响和/或您想重新启用 SELinux,请执行:
# setenforce 1
关于保存在 ramdisk 中的 php session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15596843/
我是一名优秀的程序员,十分优秀!