我对此有点困惑。
我已经从 MAMP 转移到使用 Mac 自己的 AMP 堆栈,并且已经使其运行,但就是无法正确获取目录权限。
我的本地主机指向~/Sites
并且我的用户名似乎是user
(在终端中显示为user at MacBookPro in ~ $
)。我似乎还有一个名为 的组staff
。
我已经检查过用户组是否设置为/private/etc/apache2/httpd.conf
(大约第 120 行)
User _www Group _www
问题:
每当我尝试访问类似的 URL 时,localhost/_Projects/fresh2/public/index.php
我都会收到 403 Forbidden 错误。(这将是我的 Laravel 项目的路径)。
看起来我有对面的我想要设置的内容,因为我可以轻松地查看localhost/_Projects/fresh2/app/config/
目录并在浏览器中看到所有这些文件作为目录列表,但是我希望看到的一个文件夹(“公共”)不存在(我猜这是由于权限决定的)。
注意:当我通过命令行在php artisan serve
此 Laravel 项目中运行“服务器”时,我可以运行项目的 index.php,并且它可以正常工作,我希望应用程序可以正常工作,没有权限问题。(但我还使用此文件夹来存放其他 PHP 应用程序(如 Codeigniter),因此我需要通过 URL 访问它)
文件夹权限
ls -l
我已经在该项目文件夹的根目录中运行 ,这是我所看到的:
drwxr-xr-x+ 16 user _www 544 24 Jan 13:19 .
drwxr-x---+ 5 user _www 170 24 Jan 18:50 ..
-rw-r--r--+ 1 user _www 11 19 Jan 02:14 .gitattributes
-rw-r--r--+ 1 user _www 103 19 Jan 02:14 .gitignore
-rw-r--r--+ 1 user _www 145 19 Jan 02:14 CONTRIBUTING.md
drwxr-xr-x+ 14 user _www 476 19 Jan 02:14 app
-rwxr-xr-x+ 1 user _www 2451 19 Jan 02:14 artisan
drwxr-xr-x+ 5 user _www 170 19 Jan 02:14 bootstrap
drwxr-xr-x+ 7 user _www 238 24 Jan 13:19 components
-rw-r--r--+ 1 user _www 787 24 Jan 13:19 composer.json
-rw-r--r--+ 1 user _www 64982 24 Jan 13:20 composer.lock
-rw-r--r--+ 1 user _www 566 19 Jan 02:14 phpunit.xml
drwxr-xr-x+ 7 user _www 238 19 Jan 02:14 public
-rw-r--r--+ 1 user _www 1795 19 Jan 02:14 readme.md
-rw-r--r--+ 1 user _www 519 19 Jan 02:14 server.php
drwxr-xr-x+ 27 user _www 918 24 Jan 13:20 vendor
我可能做错了什么?我还能提供什么其他信息?
答案1
将所有文件的所有权授予 apache 用户。这里是 apache 用户_www
并尝试。用于chown
更改所有权。命令如下所示。
chown _www:_www -R fldername
。此处的文件夹可能是DocumentRoot
您的项目的。