以下是详细讲解 CentOS+Nginx+PHP+MySQL 的完整配置攻略,包含示例说明。
环境说明
- 操作系统:CentOS 7
- Web 服务器:Nginx
- PHP 版本:7.2
- 数据库服务:MySQL
步骤一:安装必要的软件
首先,我们需要安装必要的软件,包括安装 Nginx、PHP 和 MySQL。
安装 Nginx
使用以下命令安装 Nginx:
$ sudo yum install nginx
安装完成后,启动 Nginx 服务并设置为开机自启:
$ sudo systemctl start nginx
$ sudo systemctl enable nginx
安装 PHP
使用以下命令安装 PHP:
$ sudo yum install php php-fpm php-mysql
安装完成后,启动 php-fpm 服务并设置为开机自启:
$ sudo systemctl start php-fpm
$ sudo systemctl enable php-fpm
安装 MySQL
使用以下命令安装 MySQL:
$ sudo yum install mysql-server mysql
安装完成后,启动 MySQL 服务并设置为开机自启:
$ sudo systemctl start mysqld
$ sudo systemctl enable mysqld
步骤二:配置 PHP 和 Nginx
现在我们需要配置 PHP 和 Nginx,使得它们可以协同工作。
配置 PHP
打开 /etc/php.ini
文件,找到 cgi.fix_pathinfo
参数并将其设置为 0
:
cgi.fix_pathinfo=0
保存文件后,重启 php-fpm 服务使其生效:
$ sudo systemctl restart php-fpm
配置 Nginx
我们需要配置 Nginx 以使其与 PHP 协同工作。打开 /etc/nginx/conf.d/default.conf
文件,使用以下内容替换其中的内容:
server {
listen 80 default_server;
root /var/www/html;
index index.php index.html index.htm;
server_name _;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
保存文件后,重启 Nginx 服务以便生效:
$ sudo systemctl restart nginx
步骤三:配置 MySQL
最后,我们需要配置 MySQL 以允许远程访问。打开 /etc/my.cnf
文件,在 [mysqld]
段中添加以下内容:
bind-address = 0.0.0.0
保存文件后,重启 MySQL 服务使其生效:
$ sudo systemctl restart mysqld
示例说明
以下是两个示例说明:
示例一:创建新站点
假设我们要创建一个新的站点,我们需要将其文件放置在 /var/www/html/newsite
文件夹下,并使用以下命令创建一个名为 index.php
的文件:
$ cd /var/www/html/newsite
$ sudo vi index.php
在打开的编辑器中输入以下内容:
<?php
phpinfo();
?>
保存并关闭文件后,在浏览器中输入 http://服务器的IP地址/newsite
即可访问该站点。
示例二:将现有站点迁移到新服务器
假设我们有一个现有站点,我们需要将其迁移至新服务器。我们可以使用以下步骤:
- 在新服务器上创建与现有服务器上文件夹路径相同的文件夹。
- 将现有服务器上文件夹中的所有文件复制到新服务器上的文件夹中。
- 将现有服务器上的数据库备份并导入到新服务器上的 MySQL 中。
- 在新服务器上修改
nginx.conf
文件,将现有站点的服务器名指向新服务器的 IP 地址。 - 重启 Nginx 和 PHP 服务使其生效,访问现有站点即可。
以上就是 CentOS+Nginx+PHP+MySQL 的完整配置攻略,希望对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CentOS+Nginx+PHP+MySQL详细配置(图解) - Python技术站