by Devin Yang
(This article was automatically translated.)

Published - 7 years ago ( Updated - 7 years ago )

foreword

Install Laravel 5.4 on Zhibang's Linux 7.0 platform, and successfully execute the case sharing,
Because it was originally an old version of the PHP execution environment, it can be transferred to the new version for free for the first time.
Therefore, a test php 7.0 environment was opened for us to test. After minor adjustments,
The environment of Laravel can indeed be executed on the managed php 7.0.x host of Zhibang,
This article introduces how I successfully implemented Laravel's website process in Zhibang.

The following content is for reference only

Be sure to ask for a trial, I can't guarantee that it will work in your environment.
 

upload

1. Upload the entire Laravel project to the hosting provider through FTP . The www on the original Zhibang is renamed to www_old. After the upload is complete, the Laravel public folder is renamed to www.


Settings and Adjustments

2. Zhibang uses the Apache server, and the default .htaccess file cannot be used.
Using the simple version provided by the official website, make sure your public/.htaccess file looks like this:
Options +FollowSymLinks
Rewrite Engine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} ! -f
RewriteRule ^ index.php [L]

3. Mandatory conversion to SSL (not necessary), if your website uses HTTPS.
Options +FollowSymLinks
Rewrite Engine 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]


Fourth, here we need to correct public_path(); let him print the correct path,

Example: The root directory of Vhost's website is /raid/vhost/example.com.tw/www ( when displayed with echo __DIR__; ),
But Laravel's public_path(); will become.../raid/vhost/example.com.tw/ public , incorrect,
Therefore, through the following settings, the public_path() can be displayed as /raid/vhost/example.com.tw/www,
The root directory of the website set by Accton Apache host.

We can fix the above problem by adjusting the content of public/index.php.
$app = require_once __DIR__.'/../bootstrap/app.php';
// Set the public folder to return to the current directory (that is, www)
$app->bind('path. public', function() {
return __DIR__;
});

Other things to pay attention to may be that the directory of the filessystem needs to be adjusted.
.env database connection and other related adjustments.

 

Tags: web-hosting laravel

Devin Yang

Feel free to ask me, if you don't get it.:)

No Comment

Post your comment

Login is required to leave comments

Similar Stories


Laravel,artisan

About the operation of --env in Laravel's artisan

This article uses Laravel 9.40.1 for operation. I believe many people know the usage of --env, but I still provide some information for Laravel beginners. In the artisan command, we can use --env to specify different .env files, so that under different subdomains, I can use different environments or even different databases. You should have also noticed that this site uses a multilingual environment, do you write two sets? Of course not, basically I created multiple .env in the same Project.

Laravel, Packages,

What packages do you have to install on all Laravel applications you build?

What kind of packages are you sure to install on your Laravel application? There are four-star kits here, almost everyone will install them, Click here to see, how do I say, my actual use experience sharing...

dlaravel

D-Laravel test domain name *.dev changed to *.test

Since Google Chrome 63 will forcibly convert the domain name of *.dev to https, the domain name of the new version of D-Laravel will be changed to *.test. This article explains how to update.