php - 无法查看或访问 Laravel 公共(public)文件夹

标签 php laravel fedora

在 Fedora 20 上,我创建了一个名为 test 的文件夹,然后通过 composer create-project laravel/laravel 将 Laravel 安装到其中。它运行成功,现在我尝试在 FireFox 中通过以下 URL 查看它:

http://localhost/~username/test/laravel/public/

但它会抛出以下错误:

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at root@localhost to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.

如果我转到父文件夹,我可以看到除了 public 文件夹之外的所有内容都在那里。但是,如果我在终端中ls,我可以看到该文件夹​​就在那里。仅此项目,其他PHP脚本没有问题。我尝试使用文件夹权限但没有成功。为什么我在浏览器中看不到该文件夹​​以及为什么当我尝试访问它时会抛出错误 500?

最佳答案

调试

查看 /var/log/httpd/error_log 后,我在最后一行看到以下内容:

[Tue May 20 09:37:21.874443 2014] [core:alert] [pid 2897] [client ::1:55498]
/home/username/public_html/test/laravel/public/.htaccess:
Options not allowed here, referer: http://localhost/~username/test/

让事情顺利进行

因此,在我的 public 文件夹中,我将 .htaccess 文件重命名为 .htaccess2,现在它可以工作了。当然,现在我需要在 URL 中的 public/ 之后编写 index.php 但至少它可以工作。这也解决了不可见文件夹错误,因此如果我在浏览器中转到项目根目录(public 的父文件夹),它也会列出 public 文件夹。

尝试修复它

According to this answer httpd.conf 文件中的配置可以被其他额外文件覆盖。您应该在这些文件中搜索包含 AllowOverride 的行,例如 AllowOverride AuthConfig FileInfo 并将其替换为 AllowOverride All

关于php - 无法查看或访问 Laravel 公共(public)文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23760774/

相关文章:

php - 如何在 Elasticsearch 中编写匹配字符串且不等于0的整数查询

php - 如何使用动态创建的查询来搜索数据库?

php - Laravel Blade : Can you yield a default partial

php - 使用 Laravel whenLoaded() 比一层更深

php - 从 repo//PHP laravel 克隆项目后数据库出现问题

PHPUnit:如何模拟对同一方法的多次调用

php - Laravel Spark - 注册时没有 AJAX 字段验证错误

fedora - 使用 Systemd 时,/tmp 的内容在 PHP-FPM 中不可见

MySQL Workbench 在 Fedora 20 上出错

linux - 您可以在 Linux 上手动设置 Firefox 3 的分辨率(像素高度/宽度)吗?