【问题标题】:session_start() failed: Permission denied (13)session_start() 失败:权限被拒绝 (13)
【发布时间】:2012-02-26 19:28:47
【问题描述】:

好的,我在尝试允许脚本访问 mkdir() 时设法搞砸了我的权限。这是我的许可目前显示的内容 - 请以某种方式告诉我他们应该是什么才能恢复正常?

XAMPP/:

drwxr-xr-x   8 root      admin      272 Feb 27  2010 XAMPP

drwxr-xr-x   3 username  admin  102 Feb 27  2010 XAMPP Control.app
lrwxr-xr-x   1 username  admin   18 Oct 26  2010 cgi-bin -> xamppfiles/cgi-bin
lrwxr-xr-x   1 username  admin   14 Oct 26  2010 etc -> xamppfiles/etc
lrwxr-xr-x   1 username  admin   17 Oct 26  2010 htdocs -> xamppfiles/htdocs
lrwxr-xr-x   1 username  admin   15 Oct 26  2010 logs -> xamppfiles/logs
drwxr-xr-x  24 root      admin  816 Feb 26 13:30 xamppfiles

xamppfiles/:

drwxr-xr-x  258 root  admin   8772 Feb 27  2010 bin
drwxr-xr-x    4 root  admin    136 Feb 27  2010 cgi-bin
drwxr-xr-x    3 root  admin    102 Feb 27  2010 doc
drwxr-xr-x   23 root  admin    782 Feb 27  2010 error
drwxr-xr-x   24 root  admin    816 Feb 27  2010 etc
drwxr-xr-x+  15 root  admin    510 Feb 26 13:59 htdocs
drwxr-xr-x  160 root  admin   5440 Feb 27  2010 icons
drwxr-xr-x  137 root  admin   4658 Feb 27  2010 lib
drwxr-xr-x    2 root  admin     68 Feb 27  2010 libexec
drwxr-xr-x   33 root  admin   1122 Feb 27  2010 licences
drwxr-xr-x    8 root  admin    272 Feb 26 12:00 logs
drwxr-xr-x   75 root  admin   2550 Feb 27  2010 modules
drwxr-xr-x   99 root  admin   3366 Feb 27  2010 phpmyadmin
drwxr-xr-x    8 root  admin    272 Feb 27  2010 sbin
drwxr-xr-x+   2 root  admin     68 Feb 26 13:30 session
drwxr-xr-x   16 root  admin    544 Feb 27  2010 share
drwxr-xr-x   29 root  admin    986 Feb 27  2010 sql-bench
drwxr-xr-x+   4 root  admin    136 Feb 26 12:51 temp
drwxr-xr-x    3 root  admin    102 Feb 27  2010 var
-rwxr-xr-x    1 root  admin  14339 Feb 27  2010 xampp
-rw-r--r--    1 root  admin   6385 Feb 27  2010 xampp.pot

在 htdocs/testsession/:

drwxr-xr-x+  3 root  admin    102 Feb 26 14:01 testsession

-rw-r--r--@ 1 root  admin  957 Feb 26 14:16 index.php

我的测试会话/index.php:

<?php
// Set the error reporting level
error_reporting(E_ALL);
ini_set("display_errors", 1);
// Start a PHP session
session_start();    
?>

和错误:

/Applications/XAMPP/xamppfiles/session
Warning: session_start() [function.session-start]: open(/Applications/XAMPP/xamppfiles/temp//sess_1b9827985300349847f0169f1031b113, O_RDWR) failed: Permission denied (13) in /Applications/XAMPP/xamppfiles/htdocs/testsession/index.php on line 10

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /Applications/XAMPP/xamppfiles/htdocs/testsession/index.php:7) in /Applications/XAMPP/xamppfiles/htdocs/testsession/index.php on line 10

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /Applications/XAMPP/xamppfiles/htdocs/testsession/index.php:7) in /Applications/XAMPP/xamppfiles/htdocs/testsession/index.php on line 10

Warning: Unknown: open(/Applications/XAMPP/xamppfiles/temp//sess_1b9827985300349847f0169f1031b113, O_RDWR) failed: Permission denied (13) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/Applications/XAMPP/xamppfiles/temp/) in Unknown on line 0

【问题讨论】:

    标签: php unix permissions


    【解决方案1】:

    chmod -R o+w ...../temp 甚至更好(更安全)chown -R apache.apache ......./temp(将 apache 替换为您的网络服务器正在使用的用户/组名)。

    【讨论】:

    • 是的,试过了,没有爱。我最终重新安装了 XAMPP 以回到原来的位置。
    【解决方案2】:

    我在使用 XAMPP 的 MAC 操作系统中遇到了确切的问题。

    通过从 /Application/XAMPP/xampfiles/temp/ 中删除会话文件解决了问题(无论会话 id 是什么 - 它都会出现在错误消息中,您会找到具有相同名称的文件)

    In your case : Applications/XAMPP/xamppfiles/temp/1b9827985300349847f0169f1031b113
    so remove file : 1b9827985300349847f0169f1031b113
    

    我认为该问题是由于在会话处于活动状态时移动/重命名 htdocs 文件夹中的某些文件夹引起的,并且似乎对于发生冲突的 mac 用户而言。

    【讨论】:

    • 谢谢,这为我解决了一个问题,显然 mysql 和 apache 都使用相同的临时文件夹,这可能是 xampp 项目负责人的错误设计决定。
    • 所以我又来了,试图支持相同的答案......我想我的记忆力不是很好。对于那些感兴趣的人,该解决方案在 2022 年仍然有效......
    【解决方案3】:

    我与其他一些错误消息一起收到了同样的错误消息。在悲痛之后,修复是......只是重新启动 XAMPP。希望对其他人有所帮助!

    Warning: session_start(): open(/var/folders/zw/hdfw48qd25xcch5sz9dd3w600000gn/T/sess_f8bgs41qn3fk6d95s0pfps60n4, O_RDWR) failed: Permission denied (13) in /Applications/XAMPP/xamppfiles/htdocs/foo/bar.php on line 3
    
    Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /Applications/XAMPP/xamppfiles/htdocs/foo/bar.php:3) in /Applications/XAMPP/xamppfiles/htdocs/foo/bar.php on line 3
    
    Warning: Unknown: open(/var/lib/php/session/sess_isu2r2bqudeosqvpoo8a67oj02, O_RDWR) failed: Permission denied (13) in Unknown on line 0
    
    Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown on line 0
    

    【讨论】:

      【解决方案4】:

      chown 对我不起作用。相反,我必须使用 chmod 更改权限(/Applications/XAMPP/xamppfiles/temp 文件夹 sudo chmod 755 似乎对我有用(在 chown 之后)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-11-04
        • 2015-05-03
        • 2016-12-13
        • 2012-06-17
        • 2011-10-12
        • 1970-01-01
        • 2021-04-02
        • 2014-03-24
        相关资源
        最近更新 更多