Home > Backend Development > PHP Problem > How to deploy php project in centos7

How to deploy php project in centos7

藏色散人
Release: 2023-03-13 11:54:01
Original
4184 people have browsed it

How to deploy PHP projects in centos7: 1. Install nginx and mysql through yum install; 2. Modify the mysql login password; 3. Install PHP and extensions; 4. Configure the nginx site; 5. Conduct project test deployment. Can.

How to deploy php project in centos7

##The operating environment of this article: centos7 system, PHP7.1 version, DELL G3 computer

centos7How to deploy PHP projects?

How to deploy PHP projects in CentOS 7:

Directory

1. Install nginx (automatic)

2. Install mysql

3. Modify mysql login password

4. Install PHP and extensions

5. Configure nginx site

6. Project test deployment

Written in front: This article uses the editplus tool to edit the server file

1. Install nginx (automatic)

Add nginx source

<p>rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm<br></p>
Copy after login
Install nginx


<p>yum install nginx<br></p>
Copy after login
Start nginx service


<p>systemctl start nginx.service    //启动<br> systemctl enable nginx.service    //开机启动<br></p>
Copy after login
Test the access. If you can see the nginx welcome interface, it means the installation is successful and you can access it normally


2. Install mysql

<p>wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm    //下载mysql源<br> rpm -ivh mysql-community-release-el7-5.noarch.rpm    //安装mysql源<br> yum install mysql-community-server    //安装mysql<br></p>
Copy after login
Start the mysql service


<p>systemctl start mysqld    //启动<br> systemctl enable mysqld    //开机启动<br> systemctl daemon-reload    //开机启动<br></p>
Copy after login
3. Change the mysql login password


<p>grep 'temporary password' /var/log/mysqld.log    //查看临时生成的密码<br> mysql -uroot -p    //使用临时密码登录<br> > ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';    //修改密码<br></p>
Copy after login
4. Install PHP and extensions


<p>yum install php php-mysql php-fpm php-mbstring php-gd php-pear <br>php-mhash php-eaccelerator  php-cli php-imap php-ldap php-odbc php-pear <br>php-xml php-xmlrpc php-mssql php-snmp php-soap php-tidy php-common php-devel <br>php-pecl-xdebug phpmyadmin php-mcrypt -y<br></p>
Copy after login
Edit the /etc/php.ini file and modify the parameters


<p>cgi.fix_pathinfo=0<br></p>
Copy after login
Edit the /etc/php-fpm.d/www.conf file and modify the parameters


<p>listen = /var/run/php-fpm/php-fpm.sock<br></p>
Copy after login
Start the php-fpm service


<p>systemctl start php-fpm    //启动<br> systemctl enable php-fpm.service    //开机启动<br></p>
Copy after login
5. Configure the nginx site


Modify the /etc/nginx/conf.d/default.conf file , add the following parameters

<p>server {<br>     listen       80;<br>     server_name  www.sange.com;    #需要修改客户端hosts文件<br>  <br>     root   /opt/data;    #PHP项目根路径<br>     index index.php index.html index.htm;<br>  <br>     location / {<br>         try_files $uri $uri/ =404;<br>     }<br>     error_page 404 /404.html;<br>     error_page 500 502 503 504 /50x.html;<br>     location = /50x.html {<br>         root /usr/share/nginx/html;<br>     }<br>  <br>     location ~ \.php$ {<br>         try_files $uri =404;<br>         fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;<br>         fastcgi_index index.php;<br>         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;<br>         include fastcgi_params;<br>     }<br> }<br></p>
Copy after login
Restart nginx service

<p>systemctl restart nginx<br></p>
Copy after login
6. Project test deployment


Create a new /opt/data/info.php file, open the file for editing, Add

<p><?php phpinfo()?><br></p>
Copy after login
and visit www.sange.com with your browser. If you can see various php configuration information, it means the configuration is successful, such as


Of course, this is just for testing the environment. A simple PHP file. When actually deploying the project, you need to modify the user name and password in the project database configuration file and import the database operation. In this case, if the client needs to log in to the database, the server's mysql needs to be set to allow remote login to grant the user access rights. When the browser needs to connect to the database, it will encounter an error message by default, which is SQLSTATE[HY000] [2003] Can't connect to MySQL server on '127.0.0.1' (13).

Problem: SQLSTATE[HY000] [2003] Can't connect to MySQL server on '127.0.0.1' (13)

Cause: SELinux does not allow httpd to access the external network

Solution:

<p>getsebool -a | grep httpd    //查看httpd状态<br> setsebool httpd_can_network_connect 1     //允许外访问<br> systemctl restart mysqld.service    //重启mysql服务<br></p>
Copy after login
Recommended study: "

PHP Video Tutorial"

The above is the detailed content of How to deploy php project in centos7. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
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