Izy*_*zy- 6 php apache .htaccess laravel-5.1
看过以前的文章,但没有运气.我刚刚通过作曲家安装了Laravel 5.1.我一直在关注安装的官方文档,位于此处.我没有使用家园,我也没有使用虚拟环境.虽然一切正常,但我在Web服务器上托管项目时遇到了麻烦.虽然常规的PHP文件很容易托管并且可以通过我的localhost访问,但是通过我的localhost访问Laravel的公共文件夹会给我500个内部服务器错误.在本教程之后,我的public/.htaccess文件具有以下内容.
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
Run Code Online (Sandbox Code Playgroud)
我的错误日志的最新条目如下.
[Thu Nov 19 22:25:10.012710 2015] [core:alert] [pid 6461] [client 127.0.0.1:43086] /var/www/html/blog/public/.htaccess: Options not allowed here
至于权限,我已授予Laravel应用程序文件夹中所有文件和文件夹的权限.我在我的机器上运行Apache/2.4.7(Ubuntu)和PHP 5.5.9-1ubuntu4.14.
如果您需要任何其他信息,请告诉我.任何帮助将非常感谢!
编辑:
通过在我的apache2.conf中添加以下内容解决了这个问题:
<Directory />
AllowOverride All
</Directory>
Run Code Online (Sandbox Code Playgroud)
感谢大家.
您一定错过了配置文件中的配置。测试这一点的最佳方法是从 htaccess 文件中删除此行。
Options +FollowSymLinks
Run Code Online (Sandbox Code Playgroud)
然后尝试一下。
确保您的 apache2.conf 提供了所有选项。有时你会遇到这样的事情
AllowOverride FileInfo AuthConfig Limit Indexes
Run Code Online (Sandbox Code Playgroud)
如果是这种情况,请将其更改为
AllowOverride All
编辑:
所以在你的 .htaccess 文件中你可以拥有。
DirectoryIndex index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
Run Code Online (Sandbox Code Playgroud)