Ubuntu LAMP部署网站完整步骤
在开始部署前,确保Ubuntu系统已更新至最新版本,避免软件包冲突或缺失:
sudo apt update && sudo apt upgrade -y
Apache是LAMP架构中的核心Web服务器,负责处理HTTP请求。
sudo apt install apache2 -y
sudo systemctl start apache2
sudo systemctl enable apache2
http://<服务器IP>
,若看到Apache默认欢迎页面(如“It Works!”),则说明安装成功。MySQL用于存储网站数据(如用户信息、文章内容等)。
sudo apt install mysql-server -y
sudo mysql_secure_installation
sudo systemctl status mysql
若显示“active (running)”,则表示数据库服务已启动。PHP是动态网站的核心脚本语言,需安装PHP核心包及与MySQL交互的扩展。
sudo apt install php libapache2-mod-php php-mysql -y
sudo systemctl restart apache2
/var/www/html
目录下创建info.php
文件,内容如下:<?php phpinfo(); ?>
保存后在浏览器访问http://<服务器IP>/info.php
,若看到PHP配置信息页面,则说明PHP安装成功。若需部署多个网站,可通过虚拟主机配置隔离不同站点的资源。
example.com
,创建对应的文档根目录:sudo mkdir -p /var/www/example.com/public_html
www-data
)对目录有读写权限:sudo chown -R www-data:www-data /var/www/example.com
sudo chmod -R 755 /var/www/example.com
sudo nano /etc/apache2/sites-available/example.com.conf
添加以下内容(替换example.com
为你的域名/IP,/var/www/example.com/public_html
为网站根目录):<VirtualHost *:80>
ServerAdmin admin@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
</VirtualHost>
sudo a2ensite example.com.conf
sudo a2dissite 000-default.conf
sudo systemctl restart apache2
将网站代码(如HTML、PHP文件)上传至虚拟主机的DocumentRoot
目录(如/var/www/example.com/public_html
)。
scp
(本地到服务器)、FTP
(如FileZilla)或Git等工具。例如,使用scp
上传本地index.html
文件:scp /local/path/index.html user@<服务器IP>:/var/www/example.com/public_html/
sudo chown -R www-data:www-data /var/www/example.com/public_html
sudo chmod -R 755 /var/www/example.com/public_html
为网站创建专用数据库和用户,避免使用root账户直接操作。
sudo mysql -u root -p
输入之前设置的root密码。CREATE DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'your_username'@'localhost' IDENTIFIED BY 'your_strong_password';
GRANT ALL PRIVILEGES ON your_database_name.* TO 'your_username'@'localhost';
FLUSH PRIVILEGES;
EXIT;
若网站需要连接MySQL(如WordPress、自定义PHP应用),需修改配置文件。
config.php
(或修改现有配置文件),内容如下(替换为步骤7中的数据库信息):<?php
$servername = "localhost";
$username = "your_username";
$password = "your_strong_password";
$dbname = "your_database_name";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>
http://<服务器IP>/config.php
,若显示“Connected successfully”,则说明数据库连接成功。在浏览器中输入网站域名(如http://example.com
)或服务器IP,若能看到网站的首页或预期内容,则说明LAMP环境部署及网站部署成功。
sudo apt install phpmyadmin -y
按提示选择Apache并设置phpMyAdmin的root密码。sudo ufw allow 'Apache Full'
sudo ufw reload