在Ubuntu上部署LNMP(Linux, Nginx, MySQL, PHP)應用是一個相對直接的過程,但需要確保每一步都正確執行。以下是一個詳細的步驟指南:
首先,確保你的系統是最新的:
sudo apt update
sudo apt upgrade
安裝Nginx Web服務器:
sudo apt install nginx
安裝完成后,啟動Nginx并設置開機自啟動:
sudo systemctl start nginx
sudo systemctl enable nginx
驗證Nginx是否安裝成功,可以在瀏覽器中訪問服務器的IP地址或域名,如果看到Nginx的歡迎頁面,則說明安裝成功。
安裝MySQL數據庫服務器:
sudo apt install mysql-server
在安裝過程中,系統會提示你設置MySQL的root密碼,請務必設置一個安全的密碼。
安裝完成后,啟動MySQL服務并設置開機自啟動:
sudo systemctl start mysql
sudo systemctl enable mysql
為了確保MySQL的安全性,建議運行以下命令進行基本配置:
sudo mysql_secure_installation
安裝PHP和必要的擴展:
sudo apt install php-fpm php-mysql
編輯Nginx的默認配置文件,通常位于/etc/nginx/sites-available/default
:
sudo nano /etc/nginx/sites-available/default
在server
塊中添加以下內容:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
保存并關閉文件,然后重新加載Nginx配置:
sudo systemctl reload nginx
在/var/www/html
目錄下創建一個info.php
文件,內容如下:
<?php
phpinfo();
?>
保存并關閉文件,然后在瀏覽器中訪問http://your_server_ip/info.php
,如果能夠看到PHP信息頁面,則說明LNMP環境已經搭建成功。
根據需要,你可能需要調整PHP的配置文件,通常位于/etc/php/7.x/fpm/pool.d/www.conf
。例如,修改監聽端口或套接字文件路徑。
如果需要,可以配置防火墻以允許HTTP和HTTPS流量:
sudo ufw allow 'Nginx Full'
sudo ufw enable
nginx -t
來檢查配置文件的語法是否正確,使用netstat -tulnp | grep 80
來查看80端口是否被占用。/var/log/php7.0-fpm.log
或者/var/log/php-fpm/error.log
。/var/log/mysql/error.log
,可以查看日志中具體的錯誤信息來解決問題。/var/log/nginx/access.log
,錯誤日志一般位于/var/log/nginx/error.log
??梢圆榭催@些日志文件中的信息來找到網站無法訪問的原因。通過以上步驟,你應該能夠在Ubuntu上成功部署LNMP應用。如果在安裝過程中遇到任何問題,可以參考相關日志文件或尋求社區幫助。