搭建Linux LNMP环境(Linux, Nginx, MySQL, PHP)是一个常见的任务,适用于部署各种Web应用程序。以下是详细的步骤指南:
安装依赖包:
yum groupinstall "development tools"
yum install zlib-devel pcre-devel openssl-devel
apt update
apt install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev
下载源码包并解压编译:
wget http://nginx.org/download/nginx-1.24.0.tar.gz
tar -zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0
./configure
make
make install
配置Nginx:
sudo nano /usr/local/nginx/conf/nginx.conf
server {
listen 80;
server_name example.com;
root /usr/local/nginx/html;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
}
sudo nginx -t
sudo systemctl restart nginx
安装MySQL/MariaDB:
yum install mariadb mariadb-server
apt install mariadb-server
安全配置:
sudo mysql_secure_installation
启动MySQL:
sudo systemctl start mariadb
sudo systemctl enable mariadb
安装PHP及其扩展:
yum install php php-fpm php-mysql php-cli php-gd php-mbstring php-xml php-curl
apt install php php-fpm php-mysql php-cli php-gd php-mbstring php-xml php-curl
配置PHP:
/etc/php/7.4/fpm/php.ini
),确保 cgi.fix_pathinfo
设置为 0
。sudo systemctl restart php7.4-fpm
sudo systemctl enable php7.4-fpm
编辑Nginx配置文件:
sudo nano /usr/local/nginx/conf/nginx.conf
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
测试Nginx配置:
sudo nginx -t
重启Nginx:
sudo systemctl restart nginx
创建PHP测试文件:
echo "<?php phpinfo(); ?>" | sudo tee /usr/local/nginx/html/info.php
访问测试文件:
在浏览器中访问 http://your_server_ip/info.php
,如果能看到PHP的信息页面,说明LNMP环境搭建成功。
设置防火墙:
sudo ufw allow 'Nginx Full'
sudo ufw enable
安装SSL证书(可选):
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d your_domain.com
通过以上步骤,你应该能够成功在Linux系统上搭建一个LNMP环境。如果在过程中遇到任何问题,请查看相关日志文件以获取更多信息。