by Devin Yang

建立於: 8年前 ( 更新: 8年前 )

前言

在智邦的Linux 7.0平台安裝Laravel 5.4,成功執行案例分享,
因為原本是舊版的PHP執行環境,第一次可以免費轉移至新版本,
因此開了一個測試的php 7.0環境給我們測試,小調整後,
Laravel的環境確實可在智邦的代管php 7.0.x主機上執行,
本文介紹,我如何在智邦成功的執行Laravel的網站過程。

以下內容僅供參考

請一定要求試用,我無法保證您的環境是可正常執行的。
 

上傳

一、透過FTP上傳Laravel整個Project到主機商,原智邦上面的www更名為www_old,上傳完成後將Laravel的public資料夾更名為www。


設定與調整

二、智邦使用的是Apache伺服器,.htaccess檔不可以用預設的。
使用官網提供的簡易的版本,確認您的public/.htaccess的檔案像下方這樣:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

三、強制轉換成SSL(非必要),如果您的網站有使用HTTPS。
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]


四、這裡要修正public_path();讓他印出正確的路徑,

舉例: 智邦的網站根目錄是/raid/vhost/example.com.tw/www (用echo __DIR__;顯示時),
但是Laravel的public_path();會變成.../raid/vhost/example.com.tw/public, 不正確,
因此可透過下方的設定,讓public_path()顯示為/raid/vhost/example.com.tw/www,
智邦Apache主機所設定的網站根目錄。

我們可透過調整public/index.php的內容,來修正上述的問題。
$app = require_once __DIR__.'/../bootstrap/app.php';
//  設定public資料夾返回目前的目錄(即是www)
$app->bind('path.public', function() {
return __DIR__;
});

其他需注意的可能是filessystem的目錄要調整。
.env資料庫連線等相關調整。

 

Tags: web-hosting laravel

Devin Yang

文章內容無法一一說明,如果您有什麼不了解處,歡迎提問哦:)

No Comment

Post your comment

需要登入才可留言!

類似的文章


laravel,Laravel security

Laravel除錯模式鎖IP

Laravel的除錯模式相當豐富,Laravel官網有提醒,在本地端開發可設定APP_DEBUG為true,但是在產品環境,這個值必需永遠都是False。

d-laravel, docker, docker-compose, laravel

D-Laravel釋出v0.9.1版了

為了讓D-Laravel保持在一個可運作的版本及穩定的本。 開始使用Tag標註該版本通過測試那些測試.. 這個版本已通過ubuntu實及macos實機測試,可順利建立Container及執行哦..

laravel

Facebook的測試用戶

是否有人跟我一樣網站用OAuth進行網站的使用者登入,在Facebook的開發者頁面有一個「測試用戶」, 可以用來測試Facebook的功能是否正常, 因為網站搬家到Google的GCE時,不知何故,我居然在Laravel的User的model中$fillable的array內多貼了一個~, 一般情況下程式都正常運作,但是在新使用者登入時,就出錯給你看。 一直聽到有人說,沒法登入這個網站留言,我想說,我都很正常呀。@@ 今天使用測試用戶測試後,哈,發覺我的網站上的登入功能根本壞很久了。