搭建LNMP环境( CentOS 7)

心灵之约 2025-01-09 ⋅ 182 阅读

简介

LNMP是指Linux + Nginx + MySQL + PHP的开发环境,是目前流行的Web服务器环境之一。本篇将介绍如何在CentOS 7上搭建LNMP环境,并配置一些常用的优化和安全策略。

步骤

安装必要的软件

首先,更新系统并安装必要的软件包:

yum update -y
yum install -y epel-release
yum install -y nginx mariadb mariadb-server php php-fpm php-cli php-mysqlnd

配置Nginx

/etc/nginx/conf.d/目录下创建一个新的配置文件mywebsite.conf,并添加以下内容:

server {
    listen       80;
    server_name  example.com www.example.com;
    root         /var/www/html;

    location / {
        index  index.php index.html index.htm;
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

保存并退出配置文件后,启动Nginx服务:

systemctl start nginx
systemctl enable nginx

配置MariaDB

运行以下命令来启动MariaDB服务并设置开机自启:

systemctl start mariadb
systemctl enable mariadb

接着,运行mysql_secure_installation脚本来提高安全性并设置root密码:

mysql_secure_installation

配置PHP

打开/etc/php.ini文件并修改以下几个配置项:

...
cgi.fix_pathinfo=0
...
upload_max_filesize=32M
...
max_execution_time=120
...
date.timezone=Asia/Shanghai
...

保存并退出配置文件后,重启PHP-FPM服务:

systemctl restart php-fpm

创建网站目录

切换到/var/www/html/目录并创建一个新的文件夹,用于存放你的网站文件:

cd /var/www/html/
mkdir mywebsite

测试网站

将你的网站文件拷贝到/var/www/html/mywebsite目录下,并访问http://example.com (假设你的域名是example.com),如果一切正常,你应该能够看到你的网站。

优化和安全策略

配置防火墙

运行以下命令来配置防火墙规则:

firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --zone=public --add-service=https --permanent
firewall-cmd --reload

关闭不必要的服务

为了提高安全性,我们可以关闭一些不必要的服务,如sendmail:

systemctl stop sendmail
systemctl disable sendmail

配置HTTPS

为了使网站更安全,我们可以配置HTTPS。首先,安装Certbot客户端:

yum install -y certbot python3-certbot-nginx

然后,运行以下命令来获取并安装证书:

certbot --nginx

根据提示输入你的邮箱地址和域名信息,Certbot将自动配置nginx并生成SSL证书。

结论

通过上述步骤,我们成功搭建了LNMP环境并配置了一些常用的优化和安全策略。你现在可以开始部署和开发你的网站了。祝你好运!


全部评论: 0

    我有话说: