将 HTML、CSS、JavaScript 文件部署到云服务器通常分为以下几个步骤。下面以 Linux 云服务器(如 Ubuntu) + Nginx 为例,提供清晰的操作流程:
✅ 一、准备工作
-
本地项目结构示例:
my-website/ ├── index.html ├── css/ │ └── style.css ├── js/ │ └── app.js └── images/ └── logo.png -
获取云服务器信息:
- IP 地址(如
47.100.123.45) - 用户名(通常是
root或ubuntu) - SSH 密钥或密码
- IP 地址(如
✅ 二、连接并安装 Web 服务器(以 Nginx 为例)
# 1. 登录服务器(替换为你的 IP 和用户名)
ssh root@your-server-ip
# 2. 更新软件包
sudo apt update && sudo apt upgrade -y
# 3. 安装 Nginx
sudo apt install nginx -y
# 4. 启动并设置开机自启
sudo systemctl start nginx
sudo systemctl enable nginx
# 5. 检查状态
sudo systemctl status nginx
💡 若使用 Apache,可替换为:
sudo apt install apache2 -y,后续路径改为/var/www/html
✅ 三、上传项目文件到服务器
方法一:使用 scp(推荐)
在本地电脑的终端执行:
# 进入项目目录
cd /path/to/my-website
# 上传整个文件夹到服务器(替换路径)
scp -r ./* root@your-server-ip:/var/www/html/
方法二:使用 SFTP 工具(如 FileZilla)
- 连接类型:SFTP
- 主机:服务器 IP
- 端口:22
- 用户/密码:同上
- 远程路径:
/var/www/html/ - 拖拽上传所有文件
✅ 四、配置权限与测试访问
# 确保文件所有者正确(可选,但推荐)
sudo chown -R www-data:www-data /var/www/html
# 设置目录权限
sudo chmod -R 755 /var/www/html
# 临时放行防火墙(若未配置)
sudo ufw allow 'Nginx Full'
sudo ufw allow 'OpenSSH'
sudo ufw enable
# 浏览器访问测试
http://your-server-ip
✅ 若看到你的 index.html 页面,说明部署成功!
✅ 五、(可选)绑定域名 & HTTPS
1. 修改 Nginx 配置(虚拟主机)
sudo nano /etc/nginx/sites-available/default
替换为:
server {
listen 80;
server_name your-domain.com www.your-domain.com;
root /var/www/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
# 静态资源缓存优化
location ~* .(css|js|jpg|png|gif)$ {
expires 30d;
add_header Cache-Control "public, immutable";
}
}
启用并重启:
sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/
sudo nginx -t # 测试配置
sudo systemctl reload nginx
2. 申请免费 SSL 证书(Let’s Encrypt)
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d your-domain.com -d www.your-domain.com
按提示操作即可自动配置 HTTPS。
🔒 安全建议
- 禁用 root 远程登录,改用普通用户 +
sudo - 定期更新系统:
sudo apt update && sudo apt upgrade -y - 使用
.htaccess或 Nginx 限制敏感文件访问(如.git,.env) - 配置防火墙只开放必要端口(22, 80, 443)
需要我根据你的具体场景(如:使用阿里云/腾讯云控制台、Docker 部署、CI/CD 自动化等)提供定制方案吗?欢迎补充细节 😊
云小栈