【问题标题】:Customizing the location of Apache Mac OS X user webroot自定义 Apache Mac OS X 用户 webroot 的位置
【发布时间】:2015-12-09 04:42:05
【问题描述】:

我已经在 Mac OS X 10.10 Yosemite 上运行了带有 PHP 的内置 Apache。 localhost 和 localhost/~username 都按预期工作。

我无法正常工作的是将我的 username 的 webroot 移动到另一个文件夹,而不是我的用户配置文件目录下的默认 Sites。我真正想要的情况不是在 /Users/username/Sites 下,而是在 /Users/username/Development/Sites 下。

我在 /etc/apache2/users 中的 用户名.conf 如下所示:

<Directory "/Users/[username]/Development/Sites/">
    AddLanguage en .en
    LanguagePriority en fr de
    ForceLanguagePriority Fallback
    Options +Indexes +MultiViews
    AllowOverride All
    Require local
    Order allow,deny
    Allow from localhost
     Require all granted
</Directory>

因此,我收到 403 Forbidden 响应 localhost/~username 在删除目录的“开发”部分时它可以正常工作。我在两个位置都有相同的 index.php。所有者、组和权限设置相同,如下所示;

禁止目录和工作目录具有相同的权限集。

“禁止”情况在 /Users/username 下有一个 Development 目录 ...

drwxr-xr-x   6 [user]  staff    204  7 sep 22:23 Development

...在它下面有一个站点文件夹...

drwxr-xr-x   4 [user]  staff   136  7 sep 22:41 Sites

.. 包含一个 index.php

-rw-r--r--@ 1 [user]  staff    21  7 sep 22:41 index.php

工作环境在 /Users/username 下有一个 Sites 目录 ...

drwxr-xr-x   7 [user]  staff    238 11 sep 21:37 Sites

.. 包含一个 index.php

-rw-r--r--@  1 [user]  staff    21  7 sep 22:41 index.php

有人吗?

【问题讨论】:

  • 文件夹的属性是什么?您必须确保没有人可以在您的文件夹上阅读它chmod o+x 如果尚未设置,则应该可以解决问题(确保可以访问完整路径
  • 感谢@FredericHenri 的回复。我已将权限信息添加到帖子中。除了之后在 index.php 上执行 chmod o+x 但没有结果。

标签: php macos apache httpd.conf


【解决方案1】:

我已经升级到 El Capitan (10.11),但我认为这在优胜美地也能正常工作。

除了开篇中的设置外,还必须编辑 /etc/apache2/extra/httpd-userdir.conf。就我而言,我编辑了

UserDir Sites

进入

UserDir Development/Sites

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-29
    • 1970-01-01
    • 2017-05-08
    • 1970-01-01
    • 2017-03-06
    • 2012-02-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多