找回密码
 立即注册
查看: 476|回复: 0

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

[复制链接]

66

主题

3

回帖

284

积分

管理员

积分
284
QQ
发表于 2024-5-16 12:16:08 | 显示全部楼层 |阅读模式
以下是一个在 CentOS 7.6 上搭建 LNMP (linux, Nginx, MySQL, php) 环境的完整教程。

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


二、安装 Nginx

1. 添加 Nginx 源:
  1. sudo yum install -y epel-release
  2. sudo yum install -y nginx
复制代码


2. 启动 Nginx 并设置为开机自启:
  1. sudo systemctl start nginx
  2. sudo systemctl enable nginx
复制代码


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

三、安装 MySQL

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


2. 安装 MySQL:
  1. sudo yum install -y mysql-server
复制代码


3. 启动 MySQL 并设置为开机自启:
  1. sudo systemctl start mysqld
  2. sudo systemctl enable mysqld
复制代码


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


5. 运行安全配置脚本并按提示操作:
  1. sudo mysql_secure_installation
复制代码

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

四、安装 PHP

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


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


3. 启动 PHP-FPM 并设置为开机自启:
  1. sudo systemctl start php-fpm
  2. sudo systemctl enable php-fpm
复制代码


五、配置 Nginx 以支持 PHP

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


2. 在文件中添加以下配置:nginx
  1. server {
  2.     listen       80;
  3.     server_name  your_domain_or_ip;

  4.     root   /usr/share/nginx/html;
  5.     index  index.php index.html index.htm;

  6.     location / {
  7.         try_files $uri $uri/ =404;
  8.     }

  9.     location ~ \.php$ {
  10.         try_files $uri =404;
  11.         fastcgi_pass   127.0.0.1:9000;
  12.         fastcgi_index  index.php;
  13.         fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
  14.         include        fastcgi_params;
  15.     }

  16.     location ~ /\.ht {
  17.         deny  all;
  18.     }
  19. }
复制代码

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

3. 检查 Nginx 配置文件语法:
  1. sudo nginx -t
复制代码


4. 重启 Nginx 使配置生效:
  1. sudo systemctl restart nginx
复制代码


六、测试 PHP

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


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

七、配置防火墙

1. 打开 HTTP 和 HTTPS 端口:
  1. sudo firewall-cmd --permanent --zone=public --add-service=http
  2. sudo firewall-cmd --permanent --zone=public --add-service=https
  3. sudo firewall-cmd --reload
复制代码

八、完成

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

额外建议

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

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

希望这篇教程对你有所帮助,如果有任何问题,请随时提问!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系站长|Archiver|手机版|小黑屋|主机论坛

GMT+8, 2025-4-5 02:33 , Processed in 0.058669 second(s), 25 queries .

Powered by 主机论坛 HostSsss.Com

HostSsss.Com

快速回复 返回顶部 返回列表