Heroku上的Laravel:它试图去/ app /(403禁止)

时间:2015-09-04 13:50:49

标签: laravel heroku homestead

我创建了我的第一个Laravel应用程序,它在本地运行。路线和控制器和东西都存在于app目录中,我在http://homestead.app看到它(我不在网址中包含/ app)。我是从这些laracasts中做到的:https://laracasts.com/series/laravel-5-from-scratch

问题:我已成功将其部署到Heroku,但当我转到根网址(https://dk-laravel-test.herokuapp.com)时,我收到403错误:

Forbidden

You don't have permission to access / on this server.

线索:

  1. 根据Papertrail日志,它实际上试图转到/ app / ,但我不确定为什么 - 这是正常的,或者是什么&# 39; s无意中设置了某个地方?

    Sep 04 05:50:40 dk-laravel-test app / web.1:[Fri Sep 04 12:50:40.115461 2015] [autoindex:error] [pid 104:tid 140623923373824] [client 10.157.115.7: 23446] AH01276:无法提供目录/ app /:找不到匹配的DirectoryIndex(index.php,index.html,index.htm),以及Options指令禁止的服务器生成的目录索引

  2. 当我在根目录下放一个index.php文件,然后尝试直接去那里时,我得到一个404(不确定是否有这个或其他问题的线索):{{3} }

  3. (3。我以前在heroku中添加了一个小的测试php应用程序并且服务很好 - 没有明显的跳跃比较两者,但Laravel显然更加擅长)

    问题:我在哪里可能会不小心告诉它去/ app /?这是正常的吗?抱歉,如果这是基本的,它是我的第一个牛仔竞技表演,而且我已经环顾了几个小时

    我检查的其他信息/内容:   - 在这篇文章(https://dk-laravel-test.herokuapp.com/index.php)之后,我设置了BUILDPACK_URL,在我的Procfile中我有:

    web: vendor/bin/heroku-php-apache2 public
    

    有什么想法吗?哪里可以不小心告诉它去/ app /?其他我应该检查的东西?任何帮助都非常感谢!!

1 个答案:

答案 0 :(得分:1)

答:我认为这与Procfile无法访问有关:

1)在原始情况下,我的laravel应用程序是我的git repo中的一个目录,所以我认为Procfile是一个太深而无法实际找到/使用的级别。

2)为了验证是否是这样,我为新的Laravel应用程序制作了一个新的(顶级)回购。即使在调整Procfile(!)时我仍然看到相同的/ app /症状,所以我感到难过和沮丧。但是今天早上我再次更新了Procfile并将其推送到github和heroku(因为我在github repo中为主分支设置了自动部署,所以应该是不必要的),但现在当我尝试在浏览器中加载它时日志是(正确)" /"而不是" / app /",所以我终于迈出了下一步! (剩下的谜一点,Procfile仍然没有在我的github repo中列出,但它出现在提交差异中,所以更改确实通过了)

所以我认为Procfile是它:|