将Ubuntu桌面版配置为Web服务器需要安装并配置必要的软件包。以下是详细步骤:
1. 系统更新与基础配置
# 更新系统
sudo apt update && sudo apt upgrade -y
# 设置时区(可选)
sudo timedatectl set-timezone Asia/Shanghai
2. 安装LAMP/LEMP栈
选项A:LAMP栈(Apache + MySQL + PHP)
# 安装Apache
sudo apt install apache2 -y
# 安装MySQL
sudo apt install mysql-server -y
sudo mysql_secure_installation # 运行安全配置脚本
# 安装PHP及相关模块
sudo apt install php libapache2-mod-php php-mysql php-cli php-curl php-gd php-mbstring php-xml php-zip -y
# 重启Apache
sudo systemctl restart apache2
选项B:LEMP栈(Nginx + MySQL + PHP)
# 安装Nginx
sudo apt install nginx -y
# 安装MySQL(同上)
sudo apt install mysql-server -y
# 安装PHP-FPM
sudo apt install php-fpm php-mysql php-cli php-curl php-gd php-mbstring php-xml php-zip -y
# 配置Nginx使用PHP-FPM
sudo systemctl restart nginx php8.1-fpm # 根据PHP版本调整
3. 配置防火墙
# 启用防火墙(如果未启用)
sudo ufw enable
# 对于Apache
sudo ufw allow 'Apache Full'
# 对于Nginx
sudo ufw allow 'Nginx Full'
# 查看状态
sudo ufw status
4. 配置虚拟主机
Apache配置示例:
# 创建网站目录
sudo mkdir -p /var/www/your_domain/public_html
# 设置权限
sudo chown -R $USER:$USER /var/www/your_domain/public_html
# 创建虚拟主机配置文件
sudo nano /etc/apache2/sites-available/your_domain.conf
配置文件内容:
<VirtualHost *:80>
ServerAdmin admin@your_domain
ServerName your_domain
ServerAlias www.your_domain
DocumentRoot /var/www/your_domain/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
启用站点:
sudo a2ensite your_domain.conf
sudo systemctl reload apache2
5. 安装phpMyAdmin(可选)
sudo apt install phpmyadmin -y
# 对于Apache:安装过程中选择apache2
# 对于Nginx:需要手动创建符号链接
sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin
6. 安全加固
修改SSH端口(可选)
sudo nano /etc/ssh/sshd_config
# 修改 Port 22 为其他端口
sudo systemctl restart sshd
安装Fail2ban
sudo apt install fail2ban -y
sudo systemctl enable fail2ban
7. 性能优化
安装OPcache(PHP提速)
sudo apt install php-opcache -y
sudo systemctl restart apache2 # 或 php-fpm
启用Apache/Nginx缓存
# Apache启用模块
sudo a2enmod cache
sudo a2enmod cache_disk
# Nginx缓存配置在nginx.conf中
8. 测试配置
-
创建测试文件:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/your_domain/public_html/info.php -
访问测试:
- 打开浏览器访问
http://your_server_ip - PHP信息页:
http://your_server_ip/info.php(测试后删除)
- 打开浏览器访问
9. 后续配置建议
-
配置SSL证书(使用Let’s Encrypt):
sudo apt install certbot python3-certbot-apache # Apache # 或 sudo apt install certbot python3-certbot-nginx # Nginx sudo certbot --apache -d your_domain.com -
设置自动更新:
sudo apt install unattended-upgrades sudo dpkg-reconfigure unattended-upgrades -
监控工具:
# 安装htop查看资源 sudo apt install htop -y
日志查看
sudo apt install logwatch -y
## 注意事项:
- 生产环境建议使用Ubuntu Server版而非桌面版
- 定期更新系统和软件包
- 配置定期备份
- 禁用不必要的服务和端口
- 使用强密码和SSH密钥认证
完成以上步骤后,你的Ubuntu桌面版就配置成了功能完整的Web服务器。
CLOUD技术笔记