admin 发表于 2024-5-16 12:16:08

Centos 7.6 Lnmp (Linux, Nginx, MySQL, PHP)搭建完整教程

以下是一个在 CentOS 7.6 上搭建 LNMP (Linux, Nginx, MySQL, PHP) 环境的完整教程。

一、准备工作
确保你的系统是最新的,执行以下命令来更新软件包:
sudo yum update -y


二、安装 Nginx

1. 添加 Nginx 源:
sudo yum install -y epel-release
sudo yum install -y nginx


2. 启动 Nginx 并设置为开机自启:
sudo systemctl start nginx
sudo systemctl enable nginx


3. 验证 Nginx 是否安装成功:
打开浏览器访问服务器 IP 地址,如果看到 Nginx 欢迎页面,说明 Nginx 已经安装成功。

三、安装 MySQL

1. 下载并添加 MySQL 存储库:
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm


2. 安装 MySQL:
sudo yum install -y mysql-server


3. 启动 MySQL 并设置为开机自启:
sudo systemctl start mysqld
sudo systemctl enable mysqld


4. 获取临时 root 密码:
sudo grep 'temporary password' /var/log/mysqld.log


5. 运行安全配置脚本并按提示操作:
sudo mysql_secure_installation

- 使用获取的临时密码登录。
- 按提示设置新的 root 密码。
- 其他安全设置根据需求选择。

四、安装 PHP

1. 安装 PHP 和必要的扩展:
sudo yum install -y epel-release
sudo yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install -y yum-utils
sudo yum-config-manager --enable remi-php74
sudo yum install -y php php-fpm php-mysql php-cli php-mbstring php-xml php-json


2. 配置 PHP-FPM:
sudo sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/' /etc/php.ini
sudo sed -i 's/user = apache/user = nginx/' /etc/php-fpm.d/www.conf
sudo sed -i 's/group = apache/group = nginx/' /etc/php-fpm.d/www.conf
sudo sed -i 's/;listen.owner = nobody/listen.owner = nginx/' /etc/php-fpm.d/www.conf
sudo sed -i 's/;listen.group = nobody/listen.group = nginx/' /etc/php-fpm.d/www.conf


3. 启动 PHP-FPM 并设置为开机自启:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm


五、配置 Nginx 以支持 PHP

1. 创建 Nginx 站点配置文件:
sudo vim /etc/nginx/conf.d/default.conf


2. 在文件中添加以下配置:nginx
server {
    listen       80;
    server_nameyour_domain_or_ip;

    root   /usr/share/nginx/html;
    indexindex.php index.html index.htm;

    location / {
      try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
      try_files $uri =404;
      fastcgi_pass   127.0.0.1:9000;
      fastcgi_indexindex.php;
      fastcgi_paramSCRIPT_FILENAME $document_root$fastcgi_script_name;
      include      fastcgi_params;
    }

    location ~ /\.ht {
      denyall;
    }
}

- 将 `your_domain_or_ip` 替换为你的域名或服务器 IP 地址。

3. 检查 Nginx 配置文件语法:
sudo nginx -t


4. 重启 Nginx 使配置生效:
sudo systemctl restart nginx


六、测试 PHP

1. 创建一个 PHP 测试文件:
sudo vim /usr/share/nginx/html/info.php


2. 在文件中添加以下内容:
php
<?php
phpinfo();
?>3. 打开浏览器访问 `http://your_domain_or_ip/info.php`,如果看到 PHP 信息页面,说明 PHP 已经正确安装并配置。

七、配置防火墙

1. 打开 HTTP 和 HTTPS 端口:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

八、完成

到此,LNMP 环境已经成功搭建。你现在可以在 `/usr/share/nginx/html` 目录下放置你的 PHP 应用。

额外建议

1. **安全性**:
   - 确保 MySQL 的 root 密码足够复杂。
   - 定期更新系统和软件包。
   - 配置 Nginx 的 SSL/TLS 以提高传输安全性。

2. **性能优化**:
   - 配置缓存(例如:Redis,Memcached)。
   - 使用 CDN 服务来加速内容分发。
   - 优化数据库查询和索引。

希望这篇教程对你有所帮助,如果有任何问题,请随时提问!
页: [1]
查看完整版本: Centos 7.6 Lnmp (Linux, Nginx, MySQL, PHP)搭建完整教程