by Devin Yang
(This article was automatically translated.)

Published - 6 years ago ( Updated - 6 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

Introduced by @dump, new features in Laravel 5.6.8

In the directive of Laravel 5.6, there is a new function called @dump Let's see how cool he is.

dlaravel

How to automatically detect and update the certificate issued by let's encrypt through getssl

It's really great that let's encrypt provides free certificates. However, is it a bit troublesome to update the certificate every three months? This article introduces how to generate multi-domain SAN certificate settings through getssl, and schedule automatic certificate renewal. It's very simple, just six steps to get it done.

dlaravel

How to start supervisor on D-Laravel

Since queue workers are a long-running program, we need a program manager supervisor to monitor whether the process on the Linux system is running continuously. For example, when the queue:work operation fails, the queue:work process can be automatically restarted. Fortunately, D-Laravel has a built-in supervisor, so you don't need to install it yourself to use it. This article briefly introduces how we start the supervisor in the container.