时间:2024年9月14日
本文是基于DigitalOcean上Ubuntu服务器上设置和部署网站,并将ip地址与NameCheap注册的域名绑在一起,以实现用户的访问。
在DigitalOcean创建Droplet后,登录到Droplet的控制台:ssh root@droplet_ip_address
。更新软件包:
sudo apt update
sudo apt update -y
网站运行需要有Web服务器,如Nginx、Apache等。本文是基于Apache。安装Apache:
sudo apt install apache2 -y
在Ubuntu系统上,可以使用ufw
(Uncomplicated
Firewall)来配置防火墙,这里需要启动HTTP(端口80)和HTTPS(端口443):
sudo ufw allow 'Apache Full'
sudo ufw enable
可以通过sudo ufw status
来查看防火墙状态,如HTTP和HTTPS端口未启动,亦可以通过以下命令启动:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw status
在服务器上,网站文件通常位于/var/www/html
目录下,将本地的网站文件上传到服务器:
scp -r /path/to/local/website/files root@drop_ip_address:/var/www/html
如需要自定义路径,如/var/www/mywebsite
,需要更改Apache的配置文件所对应的DocumentRoot。编辑配置文件:
sudo vi /etc/apache2/sites-available/000-default.conf
文件基本内容如下:
<VirtualHost *:80>
ServerName www.example.com
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
对应类似的配置文件还有000-default-le-ssl.conf
和
default-ssl.conf
,与文件000-default.conf
位于同一目录。
配置保存后,重新加载Apache:
sudo systemctl reload apache2
如果已购买域名,可将域名解析到DigitalOcean Droplet的IP地址。在控制面板添加域名到对应的Droplet,并设置A记录指向Droplet IP地址。
同样可编辑AAAA记录,CNAME等。
这里采用Let’s Encrypt免费获取并安装SSL证书,以启用HTTPS:
sudo apt install certbot python3-certbot-apache
sudo certbot --apache -d example.com -d www.example.com
以上步骤完成后,可在浏览器中通过IP地址或者域名来访问放在,确保其运行正常。