LAMP(Linux、Apache、MySQL、PHP)是經典的動態網站開發環境,以下是從環境準備到應用部署的全流程步驟,覆蓋常見Linux發行版(如Ubuntu、CentOS)的通用操作:
sudo apt update && sudo apt upgrade -y
sudo yum update -y
sudo ufw disable
sudo systemctl stop firewalld && sudo systemctl disable firewalld
/etc/selinux/config
,設置SELINUX=disabled
,重啟生效)。1. 安裝Apache(Web服務器)
sudo apt install apache2 -y
sudo yum install httpd -y
sudo systemctl start apache2 && sudo systemctl enable apache2
sudo systemctl start httpd && sudo systemctl enable httpd
http://服務器IP
,應看到Apache默認歡迎頁面。2. 安裝MySQL/MariaDB(數據庫)
sudo apt install mysql-server -y
sudo yum install mysql-community-server -y
(需先導入MySQL YUM倉庫)sudo mysql_secure_installation
sudo mysql -u root -p
(輸入密碼進入MySQL命令行)。3. 安裝PHP及常用模塊
sudo apt install php libapache2-mod-php php-mysql php-gd php-curl php-mbstring -y
sudo yum install php php-mysqlnd php-opcache php-gd php-curl php-mbstring -y
sudo systemctl restart apache2
sudo systemctl restart httpd
/var/www/html/info.php
,內容為<?php phpinfo(); ?>
,瀏覽器訪問http://服務器IP/info.php
,應顯示PHP信息頁面。1. 配置Apache虛擬主機(可選但推薦)
yourdomain.conf
為例):sudo nano /etc/apache2/sites-available/yourdomain.conf
(Ubuntu/Debian)或/etc/httpd/conf.d/yourdomain.conf
(CentOS/RHEL)。ServerName
、DocumentRoot
為實際域名/路徑):<VirtualHost *:80>
ServerAdmin webmaster@yourdomain.com
ServerName yourdomain.com
DocumentRoot /var/www/yourdomain.com
<Directory /var/www/yourdomain.com>
Options Indexes FollowSymLinks MultiViews
AllowOverride All # 允許.htaccess覆蓋配置
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/yourdomain_error.log
CustomLog ${APACHE_LOG_DIR}/yourdomain_access.log combined
</VirtualHost>
sudo a2ensite yourdomain.conf && sudo a2enmod rewrite && sudo systemctl restart apache2
sudo ln -s /etc/httpd/conf.d/yourdomain.conf /etc/httpd/conf.modules.d/00-base.conf && sudo systemctl restart httpd
。2. 配置MySQL數據庫
sudo mysql -u root -p
。CREATE DATABASE yourdatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
youruser
、yourpassword
):CREATE USER 'youruser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON yourdatabase.* TO 'youruser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
3. 調整文件權限
/var/www/yourdomain.com
)的所有權賦予Apache用戶(通常為www-data
或apache
):sudo chown -R www-data:www-data /var/www/yourdomain.com
sudo chmod -R 755 /var/www/yourdomain.com
。scp
或FTP工具將應用文件上傳至Web根目錄(如/var/www/yourdomain.com
)。scp -r /local/path/to/app username@服務器IP:/var/www/yourdomain.com
wp-config.php
、Laravel的.env
),更新數據庫連接信息(數據庫名、用戶名、密碼)。http://yourdomain.com
(或服務器IP),驗證應用是否正常加載。sudo ufw allow 'Apache Full' && sudo ufw enable
sudo firewall-cmd --permanent --add-service=http && sudo firewall-cmd --permanent --add-service=https && sudo firewall-cmd --reload
sudo apt update && sudo apt upgrade -y
(Ubuntu/Debian)或sudo yum update -y
(CentOS/RHEL),修復安全漏洞。mysqldump -u youruser -p yourdatabase > backup.sql
)和應用文件,防止數據丟失。通過以上步驟,即可在Linux LAMP環境中完成應用部署。根據應用需求,可能還需調整PHP配置(如upload_max_filesize
、memory_limit
)或優化Apache性能(如啟用壓縮、緩存),但核心流程已覆蓋絕大多數場景。