Php Yii2应用程序未在Heroku域上显示
我使用composer在Cloud9工作区上安装了一个Yi2“basic”应用程序。正如你在这里看到的,它运行良好 问题是我在部署到Heroku URL后尝试查看时出现以下错误 “禁止您没有访问/访问此服务器的权限。” 下面的屏幕截图是我的Cloud9工作区Php Yii2应用程序未在Heroku域上显示,php,heroku,yii,yii2,Php,Heroku,Yii,Yii2,我使用composer在Cloud9工作区上安装了一个Yi2“basic”应用程序。正如你在这里看到的,它运行良好 问题是我在部署到Heroku URL后尝试查看时出现以下错误 “禁止您没有访问/访问此服务器的权限。” 下面的屏幕截图是我的Cloud9工作区 我甚至尝试将basic/web/index.php添加到Heroku URL中,但只得到一个空白页面。我做错了什么 最简单的方法是检查apache日志。我没有与Heroku合作的经验,但我确信他们确实提供了接触的机会。只要看看里面,你就会
我甚至尝试将basic/web/index.php添加到Heroku URL中,但只得到一个空白页面。我做错了什么 最简单的方法是检查apache日志。我没有与Heroku合作的经验,但我确信他们确实提供了接触的机会。只要看看里面,你就会知道问题出在哪里。白色页面通常意味着这是一个灾难性的错误 另一件需要注意的事情是,您是否使用了简短的php标记。您不应该这样做,这通常是一个在您的计算机上更宽松的设置,但在托管服务器上更严格。但是再看看日志,他们也会告诉你这一点 这是针对高级模板的,因此不适合您: 我猜您没有像文档中告诉您的那样运行“php init”。init命令不仅仅是第一次获得应用程序,而且每次在新服务器上设置应用程序时也是如此。它创建index.php和您肯定需要的其他配置文件。只需再次按照yii2安装说明进行操作
在得到Herokai、David Zuelke的帮助后,我决定创建一个关于“在Cloud9中创建Yi2应用程序”主题的操作指南→ 推送到Github→ 部署到Heroku”。请参见以下内容(如果更容易阅读,请参见顶部的谷歌文档链接): 1) 创建Yii2“基本”应用程序:
290795 $ composer create-project --prefer-dist yiisoft/yii2-app-basic basic
2) 移动到“基本”目录
290795 $ cd basic/
basic $ git init
basic $ echo "web: vendor/bin/heroku-php-apache2 web/" > Procfile
basic $ git add Procfile
basic $ git commit -m "Procfile for Heroku"
3) 初始化“基本”目录的本地repo
290795 $ cd basic/
basic $ git init
basic $ echo "web: vendor/bin/heroku-php-apache2 web/" > Procfile
basic $ git add Procfile
basic $ git commit -m "Procfile for Heroku"
4) 添加并提交Yii项目
basic $ git add .
basic $ git commit -m "basic Yii project"
5) 添加指向“web”目录中index.php(条目脚本)的procfile
290795 $ cd basic/
basic $ git init
basic $ echo "web: vendor/bin/heroku-php-apache2 web/" > Procfile
basic $ git add Procfile
basic $ git commit -m "Procfile for Heroku"
6) 注释掉调试内容(我手动而不是从命令行执行此操作)
7) 这将依赖关系从v1.0.3更新为v1.1(绝对必要性)
8) 创建Heroku应用程序并推送到它。(我创建并推送到Github repo)
9) 为Yii应用程序添加Heroku日志记录(Yii开箱即用无日志记录)
10) 这允许“联系人”页面工作(不确定原因)
你好,米海。我看不出上面链接的文档中说在哪里使用“phpinit”命令。php文件是在我通过Composer安装Yii2框架时创建的。它位于basic/web目录中,我可以在Cloud9中运行该应用程序,正如您在这里看到的>>>>>>>>>您好,很抱歉我在高级模板上做了太多工作,该模板有一个init。让我弄清楚什么是什么。