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


docker,laravel

[D-Laravel]./console node

When developing Laravel, sometimes we need to install nodejs packages through npm, but Node in our system is not new enough. It may be impossible to upgrade due to some factors, such as running an old version of nodejs program, etc. In fact, we can use docker through simple commands, so that we can use the latest version of node image to mount the /sites folder on the host side. In this way, we can execute the new version of the npm command at any time.

docker, d-laravel, docker-compose, laravel

docker-compose loads multiple configuration files

We will use docker --network to establish multiple container interconnections, but if there are four containers, Is it necessary to issue docker run instructions for different containers four times, kill me, This article introduces the establishment of multiple containers at one time through the yaml file definition of docker-compose. Learn how to load multiple configuration files with the dokcer-compose -f parameter.  

laravel,laravel livewire

Laravel livewire file upload demo

Livewire is a full-stack framework for the Laravel framework. It was the first time I wrote code, and he was probably the one who was able to write and marvel at the magic. My colleague also marveled while writing after being pushed by me. When I first learned Vue, I was not so surprised by him.