Home > Backend Development > PHP Problem > How to install and configure PHP+Nginx on Linux

How to install and configure PHP+Nginx on Linux

coldplay.xixi
Release: 2023-03-02 13:56:01
Original
4610 people have browsed it

How to install and configure PHP Nginx on Linux: first install PHP; then install Nginx; then Nginx and PHP complete data requests through the 9000 port of the machine; and finally complete the test.

How to install and configure PHP+Nginx on Linux

Linux installation and configuration method of PHP Nginx:

1. PHP installation

1. Install php7.0

Software download # wget http://cn2.php.net/distributions/php-7.0.4.tar.gz

Check and install dependent packages

[root@ser3 Desktop]# rpm -qa libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 curl-devel libxslt-devel openssl-devel    
[root@ser3 Desktop]# yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxslt-devel openssl-devel    
[root@ser3 Desktop]# tar xf php-7.0.4.tar.gz    
[root@ser3 Desktop]# cd php-7.0.4    
[root@ser3 php-7.0.4]# ./configure --prefix=/usr/local/php7 --exec-prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc  --with-curl  --with-freetype-dir  --with-gd  --with-gettext  --with-iconv-dir  --with-kerberos  --with-libdir=lib64  --with-libxml-dir  --with-mysqli  --with-openssl  --with-pcre-regex  --with-pdo-mysql  --with-pdo-sqlite  --with-pear  --with-png-dir  --with-xmlrpc  --with-xsl  --with-zlib --with-zlib-dir --with-mhash --with-mcrypt --with-openssl-dir --with-jpeg-dir --enable-gd-jis-conv  --enable-fpm  --enable-bcmath  --enable-libxml  --enable-inline-optimization  --enable-gd-native-ttf  --enable-mbregex  --enable-mbstring  --enable-opcache  --enable-pcntl  --enable-shmop  --enable-soap  --enable-sockets  --enable-sysvsem  --enable-xml  --enable-zip
[root@ser3 php-7.0.4]# make    
[root@ser3 php-7.0.4]# make  test    
[root@ser3 php-7.0.4]# make install
Copy after login

2. Set up the configuration file

[root@ser3 php-7.0.4]# cp php.ini-production /usr/local/php7/etc/php.ini
Copy after login

php.ini-development Suitable for development Testing, such as local testing environment, php.ini-production has higher security settings, suitable for server online operation as a product. Generally, modify php.ini-production to php.ini, which is more secure and ensures that the test environment (local) and the official environment (online) are consistent

[root@ser3 php-7.0.4]# cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
[root@ser3 php-7.0.4]# cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf    
[root@ser3 php-7.0.4]# cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
Copy after login

3. Join the startup service

[root@ser3 php-7.0.4]# chmod +x /etc/init.d/php-fpm    
[root@ser3 php-7.0.4]# chkconfig --add php-fpm
Copy after login

Note that the www.conf configuration file in php7 configures the port number and other information of phpfpm. If you modify the default 9000 port number, you need to change it here, and then change the nginx configuration

4. Start the php service

[root@ser3 php-7.0.4]# /etc/init.d/php-fpm start
[root@ser3 php-7.0.4]# ps -ef | grep php-fpm
Copy after login

2. Nginx installation

1 .Software download:

wget http://nginx.org/download/nginx-1.6.2.tar.gz Directly use the command to download on Linux

2. Install dependencies Package pcre and dependent software

Before installing nginx, make sure you have installed# rpm -qa gcc openssl-devel pcre zlib-develSoftware library
Installing the pcre library is to enable Nginx Supports HTTP Rewriter module. If pcre does not have this installation package by default, you need to download and install it manually.

3. Optimize the installation package before installation

(Compilation and installation process optimization) Reduce the size of the compiled nginx file. When compiling nginx, the default In debug mode, a lot of tracking and ASSERT information will be inserted. After the compilation is completed,

[root@svr1 nginx-1.6.2]# vim auto/cc/gcc
# debug    
CFLAGS="$CFLAGS -g"
   注释或删除这两行,即可取消debug模式.
[root@svr1 nginx-1.6.2]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-openssl=/usr/local/openssl   
[root@svr1 nginx-1.6.2]# make && make install
[root@svr1 nginx-1.6.2]# ps -ef | grep nginx    
[root@svr1 nginx-1.6.2]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf   
[root@svr1 nginx-1.6.2]# curl -i 127.0.0.1    
......    
<body>    
<h1>Welcome to nginx!</h1>    
If you see this page, the nginx web server is successfully installed and    
......
Copy after login

The test i page will show that there is no problem with the nginx installation

3. Integrate Nginx and PHP

Nginx itself does not process requests for dynamic web pages, and Nginx transfers the dynamic requests to PHP. Nginx configuration file

# vim /usr/local/nginx/conf/nginx.conf       //标的部分是我们后面要修改的
Copy after login

How to install and configure PHP+Nginx on Linux

Looking at the picture above, Nginx already knows how to convey the request to PHP. When Nginx gets the *.php request, it will pass the request to PHP through port 9000. Now we can just remove these comments, as shown in the picture below

How to install and configure PHP+Nginx on Linux

As shown in the picture above, we have seen before that Nginx requests PHP through the 9000 port of the machine. Forwarded to PHP, and in the picture above we can see that PHP listens to data from the 9000 port of the local machine, and Nginx and PHP complete the data request through the 9000 port of the local machine.

4. Test

We have defined the storage path of the PHP website in the nginx configuration file. The path is /usr /local/nginx/html

Let’s create a new PHP page test page in this directory. The file name is test.php and the content is as follows

<?php 
     phpinfo(); 
?> 
关闭php
killall php-fpm
php重启
/usr/local/php7/sbin/php-fpm &
关闭nginx
/usr/local/nginx/sbin/nginx -s stop       //关闭服务器
重启nginx
/usr/local/nginx/sbin/nginx       开启服务器
Copy after login

After restarting PHP and nginx, we Enter http://localhost/test.php in the browser. If the following interface appears, it is considered successful.

How to install and configure PHP+Nginx on Linux

Related learning recommendations: PHP programming from entry to proficiency

The above is the detailed content of How to install and configure PHP+Nginx on Linux. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template