2015-02-11 213 views
3

我想在共享主機上部署我的laravel應用程序。它應該在www.subdomain.something.com部署Laravel共享主機 - 子域

我的文件夾結構是:

/laravel 
     app/ 
     vendor/ 
     bootstrap/ 
     server.php 
     artisan 
     composer.json 
     composer.lock 
     phpunit.xml 
    /public_html 
     subdomain/ 
     index.php 

我的index.php有以下路徑:

require '/../../laravel/bootstrap/autoload.php'; 
$app = require_once '/../../laravel/bootstrap/start.php'; 

我paths.php

'app' => __DIR__.'/../../laravel/app', 
'public' => __DIR__.'/../../public_html/subdomain', 
'base' => __DIR__.'/../../laravel', 
'storage' => __DIR__.'/../../laravel/app/storage', 

任何人都可以看到我失蹤了嗎?我試圖谷歌,並發現了一堆一步一步的解釋,但似乎沒有工作 - 它導致500內部服務器錯誤。

感謝您的任何反饋

韋斯利

+0

您是否將子域的文檔根映射到Laravel的'public'目錄? – Bogdan 2015-02-11 20:06:08

+0

我沒有公共目錄了,公共目錄的內容現在直接在public_html/subdomain 我很抱歉,如果我沒有意義,我沒有太多的經驗部署在共享主機上。 .. – Wesley 2015-02-11 20:49:17

+1

你很有道理。我把它稱爲「public」是我的錯誤,我應該說'public_html/subdomain'。但問題是一樣的,子域的文檔根是否指向該目錄?如果這是你不知道如何配置的東西,如果你指定了你正在使用的託管公司,它可能會有所幫助。 – Bogdan 2015-02-11 22:13:30

回答

0

確保您有寫入權限app/storage/和所有的子目錄。這聽起來像罪魁禍首,但如果不是,那麼看看你在app/storage/logs目錄中是否有任何錯誤。如果沒有看到是否可以解析服務器日誌。

1

按照第一條規則here。 如果你使用第一條規則,那麼一切都應該正常工作。但不知怎的,如果你面對500 Internal Server Error然後通過ssh登錄到你的服務器public_html目錄,並提供以下命令。

sudo chmod 755 -R laravel

chmod -R o+w laravel/storage

這裏laravel是你的Laravel項目目錄。