2015-10-15 11 views
7

Ho installato una app "base" Yii2 su un'area di lavoro Cloud9 utilizzando il compositore. Funziona bene come potete vedere qui https://portfolio-php--dfmmalaw.c9.io/basic/web/index.phpYii2 App non visualizzata sul dominio Heroku

Problema è che sto ottenendo sotto l'errore quando provo a visualizzare dopo la distribuzione in Heroku URL.

"Proibito Non si dispone dell'autorizzazione per accedere/su questo server."

La schermata qui sotto è il mio lavoro Cloud9 http://prntscr.com/8rrkn0

Ho anche provato ad aggiungere di base/web/index.php all'URL Heroku, ma ottengo solo una pagina vuota. Che cosa sto facendo di sbagliato?

risposta

5

Dopo aver ricevuto aiuto da Herokai, David Zuelke, ho deciso di creare un how-to sul tema "Creazione Yii2 App in Cloud9 → Spingendo a Github → Distribuzione su Heroku". Si prega di vedere di seguito (link doc google in alto se più facile da leggere):

https://docs.google.com/document/d/15teHaGWUWSNW_VwdV3-7bVpQHNRv2G0Z8GPFbIB-ogs/edit

1) Creare Yii2 app “di base”:

290795 $ composer create-project --prefer-dist yiisoft/yii2-app-basic basic 

2) Spostatevi nella directory “di base”

290795 $ cd basic/ 

3) Inizializza repo locale per la directory “di base”

basic $ git init 

4) Aggiungere e impegnarsi progetto Yii

basic $ git add . 
basic $ git commit -m "basic Yii project" 

5) Aggiungere procfile che punterà a index.php (entry script) nella directory “web”

basic $ echo "web: vendor/bin/heroku-php-apache2 web/" > Procfile 
basic $ git add Procfile 
basic $ git commit -m "Procfile for Heroku" 

6) Commentare debug roba (io lo faccio manualmente invece che da linea di comando)

basic $ vim web/index.php # remove dev/debug env stuff (not my way) 
basic $ git add web/index.php 
basic $ git commit -m "remove dev/debug env" 

7) questo aggiorna la dipendenza da v1.0.3 a v1.1 (assoluto n ecessity)

basic $ composer require fxp/composer-asset-plugin 
basic $ git add composer.json composer.lock 
basic $ git commit -m "use fxp/composer-asset-plugin in project" 

8) Creare l'app Heroku e premere su di esso.(I invece creare e spingere per Github repo)

basic $ heroku create 
basic $ git push heroku master (again I push to Github Repo synced with Heroku) 

9) Aggiunga la registrazione di Heroku per Yii app (senza registrazione per Yii out of the box)

basic $ echo "web: vendor/bin/heroku-php-apache2 -l runtime/logs/app.log web/" > Procfile 
basic $ git add Procfile 
basic $ git commit -m "tail runtime/logs/app.log" 
basic $ git push heroku master (again I push to Github Repo synced with Heroku) 

10) In questo modo il “Contatto "Pagina di lavoro (non so perché)

basic $ composer require ext-gd:* --ignore-platform-reqs 
basic $ git add composer.json composer.lock 
basic $ git commit -m "require GD for contact CAPTCHA" 
basic $ git push heroku master (again I push to Github Repo synced with Heroku) 
0

Il modo più semplice è controllare i log di apache. Non ho esperienza con Heroku, ma sono sicuro che offrono l'accesso a loro. Basta dare un'occhiata lì e vedrai qual è il problema. Una pagina bianca di solito significa che è stato un errore catastrofico.

Un'altra cosa da considerare è se sono stati utilizzati tag php brevi. Non dovresti farlo e questo di solito è un'impostazione più rilassata sul tuo computer ma più rigida sui server di hosting. Ma guarda di nuovo i log, anche loro te lo diranno.

Questo è per il modello avanzato, quindi non per te: Immagino che tu non abbia eseguito 'php init' come dice la documentazione. Il comando init non è solo la prima volta che si ottiene l'applicazione, ma per ogni volta che lo si installa anche su un nuovo server. crea index.php e altri file di configurazione di cui avrai sicuramente bisogno. Basta seguire di nuovo il yii2 istruzioni per l'installazione http://www.yiiframework.com/doc-2.0/guide-start-installation.html

+0

Ciao Mihai. Non vedo dove si dice di usare il comando "php init" nella documentazione che hai linkato sopra. Il file index.php è stato creato quando ho installato il framework Yii2 tramite Composer. Si trova nella directory base/web e sono in grado di eseguire l'applicazione in Cloud9 come puoi vedere qui >>>>>> http://prntscr.com/8rtpbq –

+0

ciao, scusa ho lavorato troppo per l'avanzato modello, quello ha un init. Lasciami capire cosa è cosa. –

Problemi correlati