Home Backend Development PHP Tutorial Detailed steps for deploying thinkphp5 project on cloud virtual host

Detailed steps for deploying thinkphp5 project on cloud virtual host

May 03, 2018 pm 04:12 PM
php thinkphp5 virtual host

This article mainly introduces the detailed steps of deploying thinkphp5 project on cloud virtual host. It has certain reference value. Now I share it with you. Friends in need can refer to

thinkphp official website last year. At that time, thinkphp5, a subversive version of tp, was released. tp5 is indeed much easier to use than the previous version. So the following article will introduce to you the relevant information about deploying thinkphp5 projects on cloud virtual hosts. Friends who need it can refer to it. Let’s take a look together.

Preface

Thinkphp, as an open source PHP framework, has developed to this day. It is undoubtedly the most suitable framework for PHP students to learn and use in China. In addition to being simple It is easy to get started, and the greater advantage is that it has complete development documentation and rich plug-ins. This article will give you a detailed introduction to the relevant content of deploying the thinkphp5 project on the cloud virtual host, and share it for your reference and study. I won’t say much below, let’s take a look at the detailed introduction.

Check the ThinkPHP5.0 Complete Development Manual->Deployment->Virtual Host Environment, and after understanding the situation, start making modifications.

Environment

  • thinkphp 5.0.11

  • Alibaba Cloud Virtual System CentOS

Step 1

Modify the location of the mobile entry file and move it Go to the root directory (i.e. htdocs).

Modify the content of the index.php entry file

// 定义应用目录
define('APP_PATH', __DIR__ . '/application/');
// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';
Copy after login

It can be accessed now, but click on the inner page to see the path The rewrite is no longer effective. Because the .htaccess file is missing.

Step 2

Move the .htaccess file to the root directory as well.

You may have solved the problem by now. If you haven't solved it yet, keep reading.

Step Three

Safety!

Because you moved the entry file to the following directory, all directories under the framework have been exposed.

If the apache server does not handle it. Then you can directly access important files.

Regardless of whether it has been processed or not, directly create an .htaccess for each directory under the directory. Then write deny from all.

deny from all
Copy after login

Okay.

Step 4

Solution: Static resources such as css, js, pictures, etc. get 404.

Because the file was moved out of the public directory, the file cannot be found.

Need to replace all directory paths.

If you use __PUBLIC__, __STATIC__, __CSS__, __JS__, etc. to write

Congratulations, just change view_replace_str directly in the configuration

'view_replace_str'  => [
 '__PUBLIC__' => '/public',
 '__STATIC__' => '/public/static',
 '__CSS__' => '/public/static',
 '__JS__'  => '/public/static',
],
Copy after login

If not, then replace all view files and all directories where the path is used

/public/static
Copy after login

Particularly easy to overlook is the background path in css and the custom upload path, please pay attention.

Step 5

File paths under Linux are case-sensitive.

For example, yours:

The controller method name is: public function userCenter()

The corresponding view file is: userCenter.html,

Then when you access it, you find that the view file cannot be found and an error is reported.

Solution:

Method 1. Change the template file name to all lowercase;

Method 2, $this->fetch('template file name');

Method 3, $this->fetch(__FUNCTION__), but the view file name must be followed by the method Same name.

Test all the functions of the website, ok, the deployment and configuration is completed.

Related recommendations:

A brief discussion on the simple implementation of thinkphp5 instance

The above is the detailed content of Detailed steps for deploying thinkphp5 project on cloud virtual host. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers Of The Witch Tree - How To Unlock The Grappling Hook
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1677
14
PHP Tutorial
1280
29
C# Tutorial
1257
24
What happens if session_start() is called multiple times? What happens if session_start() is called multiple times? Apr 25, 2025 am 12:06 AM

Multiple calls to session_start() will result in warning messages and possible data overwrites. 1) PHP will issue a warning, prompting that the session has been started. 2) It may cause unexpected overwriting of session data. 3) Use session_status() to check the session status to avoid repeated calls.

Composer: Aiding PHP Development Through AI Composer: Aiding PHP Development Through AI Apr 29, 2025 am 12:27 AM

AI can help optimize the use of Composer. Specific methods include: 1. Dependency management optimization: AI analyzes dependencies, recommends the best version combination, and reduces conflicts. 2. Automated code generation: AI generates composer.json files that conform to best practices. 3. Improve code quality: AI detects potential problems, provides optimization suggestions, and improves code quality. These methods are implemented through machine learning and natural language processing technologies to help developers improve efficiency and code quality.

What is the significance of the session_start() function? What is the significance of the session_start() function? May 03, 2025 am 12:18 AM

session_start()iscrucialinPHPformanagingusersessions.1)Itinitiatesanewsessionifnoneexists,2)resumesanexistingsession,and3)setsasessioncookieforcontinuityacrossrequests,enablingapplicationslikeuserauthenticationandpersonalizedcontent.

How to use MySQL functions for data processing and calculation How to use MySQL functions for data processing and calculation Apr 29, 2025 pm 04:21 PM

MySQL functions can be used for data processing and calculation. 1. Basic usage includes string processing, date calculation and mathematical operations. 2. Advanced usage involves combining multiple functions to implement complex operations. 3. Performance optimization requires avoiding the use of functions in the WHERE clause and using GROUPBY and temporary tables.

H5: Key Improvements in HTML5 H5: Key Improvements in HTML5 Apr 28, 2025 am 12:26 AM

HTML5 brings five key improvements: 1. Semantic tags improve code clarity and SEO effects; 2. Multimedia support simplifies video and audio embedding; 3. Form enhancement simplifies verification; 4. Offline and local storage improves user experience; 5. Canvas and graphics functions enhance the visualization of web pages.

Composer: The Package Manager for PHP Developers Composer: The Package Manager for PHP Developers May 02, 2025 am 12:23 AM

Composer is a dependency management tool for PHP, and manages project dependencies through composer.json file. 1) parse composer.json to obtain dependency information; 2) parse dependencies to form a dependency tree; 3) download and install dependencies from Packagist to the vendor directory; 4) generate composer.lock file to lock the dependency version to ensure team consistency and project maintainability.

How to configure the character set and collation rules of MySQL How to configure the character set and collation rules of MySQL Apr 29, 2025 pm 04:06 PM

Methods for configuring character sets and collations in MySQL include: 1. Setting the character sets and collations at the server level: SETNAMES'utf8'; SETCHARACTERSETutf8; SETCOLLATION_CONNECTION='utf8_general_ci'; 2. Create a database that uses specific character sets and collations: CREATEDATABASEexample_dbCHARACTERSETutf8COLLATEutf8_general_ci; 3. Specify character sets and collations when creating a table: CREATETABLEexample_table(idINT

How to use type traits in C? How to use type traits in C? Apr 28, 2025 pm 08:18 PM

typetraits are used in C for compile-time type checking and operation, improving code flexibility and type safety. 1) Type judgment is performed through std::is_integral and std::is_floating_point to achieve efficient type checking and output. 2) Use std::is_trivially_copyable to optimize vector copy and select different copy strategies according to the type. 3) Pay attention to compile-time decision-making, type safety, performance optimization and code complexity. Reasonable use of typetraits can greatly improve code quality.

See all articles