【问题标题】:Which directories are writable by web server on shared web-hosting?共享网络主机上的网络服务器可写入哪些目录?
【发布时间】:2011-01-17 19:49:50
【问题描述】:

目前我正在使用共享虚拟主机 (Linux) 来托管我的网站。我知道 '~/home/my_user_name/www' 目录中的任何内容都可以由服务器写入。其他位置是什么?基本上我想更改默认会话存储位置,可能我不应该把它放在 www 目录中。

编辑

会话保存位置是否必须是 Web 服务器可写的,因为会话是由 PHP 进程保存的?

编辑 2

我如何在/home/my_user_name/tmp 目录(tmp 目录在 www 目录之外)向 Apache 授予读写权限?

【问题讨论】:

    标签: php directory shared-hosting writable


    【解决方案1】:

    对于 httpd 服务器可写的目录没有真正的“标准”:这完全取决于拥有目录的用户授予了哪些访问权限。

    临时会话文件通常存储在/tmp 目录中,该目录通常可供任何人写入——但这意味着您的会话文件将位于与您使用同一服务器的其他应用程序和用户可以访问的目录中。


    当您从/home/my_user_name/www 目录运行应用程序时,一个解决方案可能是创建另一个目录,例如/home/my_user_name/tmp,并在此目录上为 Apache 授予读写权限——然后,配置您的 application/php以便将会话文件存储在那里。

    另一种解决方案是将会话数据存储在数据库中:您的服务器上的其他用户和应用程序可能无法访问您的数据库。

    【讨论】:

    • @pascal:我如何在 tmp 目录上为 Apache 授予读写权限? Apache 会属于用户/组/其他?可能它会归类,对吧?
    • 这取决于 Apache 将哪个目录视为“根目录”:如果它是 www 一个,则 tmp 一个不在 www 下的一个将不会被阿帕奇;;;否则,是的,您可以使用包含 Deny from All 之类的 .htaccess 文件来阻止 Apache 提供服务;;;回答您的编辑:当页面由 Apache+PHP 提供服务时,没有真正的“PHP 进程”:Apache 是为页面提供服务的那个,即使它使用 PHP 来做到这一点。
    猜你喜欢
    • 2010-10-27
    • 1970-01-01
    • 2017-04-30
    • 1970-01-01
    • 2012-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-29
    相关资源
    最近更新 更多