【问题标题】:Location of session files in Apache/PHP in OS X?OS X 中 Apache/PHP 中会话文件的位置?
【发布时间】:2015-12-11 21:45:30
【问题描述】:

我正在遵循一组在 CentOS 上设置 Apache/PHP 的说明,但我使用的是 OS X,因此我正在尝试找到正确的等效项。它告诉我设置session.save_path = "/var/lib/php/session"。但是,该文件夹在 OS X 上似乎不存在。lib 中没有 PHP 文件夹。

默认的session.save_path 设置为/tmp,我不确定它在文件系统上的位置。对此的任何澄清也将不胜感激。在 OS X 上是否有等同于 /var/lib/php/session 的内容?

【问题讨论】:

标签: php apache session


【解决方案1】:

session_save_path()返回用于保存会话数据的当前目录的路径。

【讨论】:

  • session_save_path() 可能返回一个空字符串。完整答案:session_save_path() ?: sys_get_temp_dir()(即如果session_save_path() 为空,则使用sys_get_temp_dir()
【解决方案2】:

这取决于您的php.ini 文件。

默认情况下,路径设置为tmp文件夹,在macOS上:

echo $TMPDIR

会给你这条路。

【讨论】:

    【解决方案3】:

    您是否尝试将 PHP 文件存储到 www 文件夹中以便从浏览器中调用它? 如果是这样的话,我相信是/var/www/html/

    【讨论】:

      【解决方案4】:

      补充Nadjib KHELIFATI的答案

      你可以在终端执行这个命令:

      php -r 'echo "PHP Sessions PATH: ".((session_save_path()) ? session_save_path():sys_get_temp_dir() ).PHP_EOL;'
      

      或者将该行添加到 php 文件中

      <?php
      
      echo "PHP Sessions PATH: ".((session_save_path()) ? session_save_path():sys_get_temp_dir() ).PHP_EOL;
      

      【讨论】:

        猜你喜欢
        • 2011-06-23
        • 2012-08-10
        • 1970-01-01
        • 2012-01-07
        • 2015-09-10
        • 2015-08-02
        • 2015-12-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多