Ubuntu LAMP应用部署详细步骤
在开始部署前,确保Ubuntu系统已更新到最新版本,避免软件包冲突:
sudo apt update && sudo apt upgrade -y
Apache是LAMP架构中的核心Web服务器,负责处理HTTP请求。
sudo apt install apache2
sudo systemctl start apache2
sudo systemctl enable apache2
http://123.45.67.89),若看到Apache默认欢迎页面(包含“It works!”字样),则说明安装成功。MySQL用于存储Web应用数据,需完成安装及安全配置。
sudo apt install mysql-server
sudo mysql_secure_installation
按提示操作,重点设置强root密码(如包含大小写字母、数字和符号)。sudo mysql -u root -p # 输入密码登录
SHOW DATABASES; # 查看数据库列表
exit; # 退出
PHP是服务器端脚本语言,需安装核心包及与MySQL交互的模块。
sudo apt install php libapache2-mod-php php-mysql
可选扩展(根据应用需求添加):php-curl(网络请求)、php-json(JSON处理)、php-gd(图像处理)等。sudo systemctl restart apache2
/var/www/html目录下创建info.php文件,内容为:<?php phpinfo(); ?>
浏览器访问http://your_server_ip/info.php,若显示PHP配置详情(如版本、模块列表),则说明PHP安装成功。将应用文件上传至Apache默认文档根目录(/var/www/html),并设置正确权限。
scp命令将本地项目文件(如myapp/)上传至/var/www/html:scp -r /local/path/to/myapp user@your_server_ip:/var/www/html/
www-data)对文件有读写权限:sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
http://your_server_ip,若看到应用首页(如WordPress登录页、自定义PHP页面),则说明应用部署成功。若需托管多个网站,可通过虚拟主机配置实现。
sudo nano /etc/apache2/sites-available/myproject.conf
添加以下内容(替换myproject.com为你的域名,/var/www/myproject为项目目录):<VirtualHost *:80>
ServerAdmin admin@myproject.com
DocumentRoot /var/www/myproject
ServerName myproject.com
ServerAlias www.myproject.com
<Directory /var/www/myproject>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/myproject_error.log
CustomLog ${APACHE_LOG_DIR}/myproject_access.log combined
</VirtualHost>
sudo a2ensite myproject.conf # 启用配置
sudo systemctl reload apache2 # 重启Apache
注:需将域名解析至服务器IP(DNS设置中添加A记录)。允许HTTP(端口80)和HTTPS(端口443)流量,确保外部可访问:
sudo ufw allow 'Apache Full' # 允许HTTP/HTTPS
sudo ufw enable # 启用防火墙
sudo ufw status # 查看防火墙状态
sudo systemctl status apache2),防火墙是否允许HTTP流量,或SELinux是否禁用(Ubuntu默认未启用SELinux)。libapache2-mod-php模块已安装,Apache配置文件中AddType application/x-httpd-php .php指令存在,重启Apache。通过以上步骤,你可在Ubuntu系统上成功部署LAMP环境并运行Web应用。根据实际需求,可进一步优化配置(如启用HTTPS、优化MySQL性能、添加缓存机制等)。