by Devin Yang

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

前言

在智邦的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的Validator自訂錯誤訊息

我們通常開發Laravel時,有時會進行欄位驗證,但使用Validator預設的訊息是英文的。 但當然想要有更精確顯示中文訊息顯示, 本文介紹,我如何使用Laravel的Validator自訂中文的訊息。

laravel docker

關於D-Laravel的專案模式

如果您是新使用者,建議您改用我的最新環境phpenv。https://github.com/DevinY/phpenv

laravel

Laravel上的表單方法欺騙

為何Laravel需要有Form Method Spoofing呢? 因為HTML表單並不支援PUT、PATCH及DELETE等動作,因此在Laravel上 在提交HTML表單送出時,我們需要透過一個隱藏的_method輸入欄,作為HTTP的請求發送。