在Ubuntu上使用Nginx部署静态网站的步骤如下:
首先,确保你的系统是最新的,然后安装Nginx。
sudo apt update
sudo apt install nginx
默认情况下,Nginx会监听80端口,并将请求转发到/var/www/html目录。你可以修改这个配置来指向你的静态网站文件。
你可以为你的网站创建一个新的配置文件,而不是修改默认的配置文件。
sudo nano /etc/nginx/sites-available/yourdomain.com
在打开的文件中,添加以下内容:
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
root /var/www/yourdomain.com;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
listen 80;:监听80端口。server_name yourdomain.com www.yourdomain.com;:你的域名。root /var/www/yourdomain.com;:你的静态网站文件的根目录。index index.html index.htm;:默认的索引文件。location / { try_files $uri $uri/ =404; }:尝试匹配请求的文件,如果找不到则返回404错误。创建一个符号链接以启用该配置:
sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled/
sudo nginx -t
如果一切正常,你会看到类似以下的输出:
nginx: configuration file /etc/nginx/nginx.conf test is successful
sudo systemctl reload nginx
将你的静态网站文件上传到/var/www/yourdomain.com目录。你可以使用scp、rsync或其他文件传输方法。
例如,使用scp:
scp -r /path/to/your/website/* user@yourdomain.com:/var/www/yourdomain.com/
打开浏览器,访问你的域名(例如http://yourdomain.com),你应该能看到你的静态网站。
为了安全起见,建议为你的网站配置SSL证书。你可以使用Let’s Encrypt来免费获取SSL证书。
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
按照提示完成证书的安装和配置。
Certbot会自动设置一个cron任务来定期续期SSL证书。你也可以手动测试续期:
sudo certbot renew --dry-run
如果一切正常,你可以手动续期:
sudo certbot renew
通过以上步骤,你就可以在Ubuntu上使用Nginx成功部署一个静态网站,并且可以选择性地为其配置SSL证书以确保安全。