Detailed explanation of how to build phalcon environment under nginx server on centos7 system

Detailed explanation of how to build phalcon environment under nginx server on centos7 system

This article describes how to build a phalcon environment under the nginx server of the centos7 system. Share with you for your reference, the details are as follows:

Previously, we used Apache server, but the response rate could only reach 2000 per second. I heard that nginx can easily reach 10,000.

So let’s try nginx.

Phalcon's official website has examples of nginx rewrite rules, but they are inconsistent with Apache's, which made me confused for a long time.

1. Add nginx source

vi /etc/yum.repos.d/nginx.repo

 [nginx]
   name=nginx-repo
   baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
   gpgcheck=0
   enabled=1

2. Modify the configuration of nginx

vi /etc/nginx/conf.d/default.conf
server {
  listen 80;
  server_name localhost.dev;
  index index.php index.html index.htm;
  root /var/www/html;
  location / {
    root /var/www/html; #phalcon official website is the public directory. If you use this directory, it will be different from the Apache configuration index index.php index.html index.htm;
    # If the file exists, return the file directly if (-f $request_filename) {
      break;
    }
    # If it does not exist, redirect to public/index.php
    if (!-e $request_filename) {
      rewrite ^(.+)$ /public/index.php?_url=$1 last;
      break;
    }
  }
  location ~ \.php$ {
      try_files $uri =404;
      fastcgi_split_path_info ^(.+\.php)(/.+)$;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include fastcgi_params;
  }
  location ~* ^/(css|img|js|flv|swf|download)/(.+)$ {
    root /var/www/html/public;
  }
  location ~ /\.ht {
    deny all;
  }
}

3. Configuration of php-fpm

vi /etc/php-fpm.d/www.conf

Modify to user and user group

; RPM: apache Chooses to be able to access some dir as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

4. User group modification

chown -R nginx:nginx /var/lib/php/session/
chown -R nginx:nginx /var/www/html/

Restart nginx and php-fpm.

systemctl restart nginx
systemctl restart php-fpm

Further optimization and waiting for the next situation

I hope this article will be helpful for your centos server operations.

You may also be interested in:
  • Detailed tutorial on building Gitlab server on CentOS8.1
  • Implementation steps for building a local web server on Centos8
  • How to build mysql master-slave server on centos7 (graphic tutorial)
  • Detailed explanation of building Nginx website server based on centos7 (including configuration of virtual web host)
  • CentOS 7.2 builds nginx web server to deploy uniapp project
  • Tutorial on building a master-slave DNS server in Centos7
  • Install and build a server environment of PHP+Apache+MySQL on CentOS
  • A concise tutorial on setting up a PHP server environment on CentOS
  • Centos builds chrony time synchronization server process diagram

<<:  MySQL 8.0.13 free installation version configuration tutorial under Windows environment

>>:  In-depth explanation of MySQL user account management and permission management

Recommend

5 issues you should pay attention to when making a web page

1. Color matching problem <br />A web page s...

Build a Docker private warehouse (self-signed method)

In order to centrally manage the images we create...

Detailed explanation of using pt-heartbeat to monitor MySQL replication delay

pt-heartbeat When the database is replicated betw...

Detailed explanation of Json format

Table of contents A JSON is built on two structur...

How to execute PHP scheduled tasks in CentOS7

Preface This article mainly introduces the releva...

JavaScript type detection method example tutorial

Preface JavaScript is one of the widely used lang...

How to create a swap partition file in Linux

Introduction to Swap Swap (i.e. swap partition) i...

WeChat applet selects the image control

This article example shares the specific code for...

Install MySQL 5.7.18 using rpm package under CentOS 7

I have been using MySQL recently. The article mys...

Create a virtual environment using venv in python3 in Ubuntu

1. Virtual environment follows the project, creat...

jQuery to achieve sliding stairs effect

This article shares the specific code of jQuery t...

Example of using docker compose to build a consul cluster environment

Basic concepts of consul Server mode and client m...

About the usage and precautions of promise in javascript (recommended)

1. Promise description Promise is a standard buil...

Detailed tutorial on installing MYSQL under WINDOWS

1. Download the installation package -Choose the ...