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

需要登入才可留言!

类似文章


docker, d-laravel, docker-compose, laravel

docker-compose加载多个设置档

我们会用docker --network创建多个container互连,但是如果四个container时, 是不是就要下四次docker run不同container的命令,杀了我吧, 本文介绍透过docker-compose这个yaml档定义一次搞定多个container的创建。 了解如何用dokcer-compose -f 参数加载多个设置档。  

laravel storage

我如何用Laravel的Storage的sftp driver同步文件

SFTP的安装及设置不在本篇讨论范围,如果您想了解,建议可以看另一篇https://www.ccc.tc/article/Laravel-SFTP-Driver-Configuration本篇我要用极快速的Sample Demo我如何用自建的artisan的命令同步远程的数据到本地端。或许有人会问为何不用rsync,呀本篇就是要介绍用Storage的方式同步文件。🤪直接看code吧,我在config/filesystems.php设置了一个sftp磁盘叫ccc。

laravel storage,sftp

用tinker测试Laravel的sftp自定义Storage::path及Storage::url

今天来测测Laravel上使用sftp driver,如果您没用过,快来看看我测试的结果顺便提一下,我们在Laravel的tinker环境中,进行Storage的功能很是方便的,不管是local或是远程。调整完设置后,记得离开再进入。