我第一次尝试使用Laravel并将其安装在我的Mac(OSX Mavericks)上,同时安装了MAMP 5.4.14(PHP 5.4.14,Apache 2)。我在MAMP上安装了各种其他项目(CakePHP),并且没有问题从别名目录提供文件。然而,Laravel似乎不喜欢它附带的配置或我用于CakePHP的配置,但我还没有找到解决方案。
在我的Apache配置中,我将其定义为我的别名:
Alias /laravel/ "/Users/user1/Documents/Web Development/laravel/public/“
<Directory "/Users/user1/Documents/Web Development/laravel/public”>
Options +Indexes +MultiViews +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
在Laravel公共文件夹中我在htaccess中有这个
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /laravel/
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
不幸的是,我得到的是标准的Apache 403错误。
[Sat Mar 22 17:29:38.408215 2014] [authz_core:error] [pid 31418] [client ::1:51107] AH01630: client denied by server configuration: /Users/user1/Documents/Web Development/laravel/public/\xe2\x80\x9c
任何人都可以提供一些关于我忽略的提示吗?感谢
修改 - 其他信息
chmod整个laravel目录到777没有帮助
Laravel app.php文件有
'url' => 'http://localhost:8080/laravel',
我运行了内部的php服务器,它运行正常(php artisan serve),虽然它在base64_decode上引发了异常
还尝试了默认的htaccess
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteBase /laravel/
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
答案 0 :(得分:1)
好吧,我应该注意到apache消息中的\ xe2 \ x80 \ x9c,这是可怕的卷曲引号。编辑器之间的复制和粘贴设法破坏了我的配置文件。以下是最终配置仅供参考:
Apache别名conf:
Alias /laravel/ "/Users/user1/Documents/Web Development/laravel/public/"
Alias /laravel "/Users/user1/Documents/Web Development/laravel/public"
<Directory "/Users/user1/Documents/Web Development/laravel/public">
Options +Indexes +MultiViews +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
我的laravel项目中的htaccess文件是默认的
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteBase /laravel/
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
我可以在
访问它http://localhost:8080/laravel/
希望这有助于其他人!