在linux服務器上部署LNMP (Linux, nginx, mysql, php) 環境是搭建Web應用的常見方法。本文提供詳細的安裝步驟:
一、安裝Nginx Web服務器
首先更新系統軟件包列表,然后安裝Nginx:
sudo apt update sudo apt install nginx -y
sudo yum update sudo yum install nginx -y
安裝完成后,啟動Nginx并設置為開機啟動:
sudo systemctl start nginx sudo systemctl enable nginx
在瀏覽器訪問服務器IP地址,查看Nginx默認歡迎頁面,確認安裝成功。
Debian/Ubuntu系統:
sudo apt install mysql-server -y
Red Hat/CentOS系統:
sudo yum install mariadb-server -y
運行MySQL安全腳本,設置root密碼和其他安全選項:
sudo mysql_secure_installation
三、安裝PHP解釋器
Debian/Ubuntu系統:
sudo apt install php-fpm php-mysql -y
Red Hat/CentOS系統:
sudo yum install php php-fpm php-mysql -y
啟動PHP-FPM并設置為開機啟動: (注意:php7.4-fpm 可能需要根據你的PHP版本調整為php8.0-fpm或其他版本)
sudo systemctl start php-fpm sudo systemctl enable php-fpm
四、配置Nginx與PHP-FPM
編輯Nginx默認站點配置文件(/etc/nginx/sites-available/default):
sudo nano /etc/nginx/sites-available/default
找到.php相關的配置塊,并確保fastcgi_pass指向正確的PHP-FPM套接字文件 (路徑可能因PHP版本而異,例如/run/php/php8.0-fpm.sock):
location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php-fpm.sock; # 調整為你的PHP-FPM套接字路徑 }
測試Nginx配置:
sudo nginx -t
無錯誤后,重啟Nginx:
sudo systemctl restart nginx
五、PHP測試
創建測試文件/var/www/html/info.php:
<?php phpinfo(); ?>
在瀏覽器訪問http://你的服務器IP/info.php,查看PHP信息頁面,確認LNMP環境搭建成功。
六、常見問題及解決方案
- 權限問題: 檢查Nginx和PHP-FPM進程對網站文件和目錄的訪問權限,使用chown和chmod命令調整權限。
- 端口沖突: 使用netstat -tuln | grep 80檢查端口80是否被占用。
- 防火墻: 確保防火墻允許80(HTTP)和443(https)端口的流量。
- PHP版本不兼容: 根據需要安裝不同版本的PHP,并調整Nginx和PHP-FPM配置。
如有任何錯誤信息,請提供詳細信息以便更好地解決問題。 本指南旨在提供一個通用的安裝步驟,具體操作可能因Linux發行版和PHP版本而略有不同。