首先在当前目录下,用npm run build
命令将文件打包到build文件夹(或者是其他文件夹名)
把build目录传到服务器上
打开终端(提一句,Windows在Microsoft store里新出的terminal应用还蛮好用的,当然是相对而言。啊,对了,它还出了WSL 的ubuntu子系统)
cd到自己的文件目录(就是目录下有build的那个),然后
scp -r ./build/* username@server_ip:/var/www/html
后面的目录可以自己指定,当然我不大建议传到服务器的/home文件夹里去
当然也可以先压缩成zip再上传防止遗失文件,等到上传上去了再用unzip解压(啊,提一句,unzip解压是解压到当前目录,请小心不要弄得当前目录下一堆文件,具体请参阅百度)
部署nginx服务器
安装nginx
如已安装请直接跳过此节。
我参阅了官方文档,服务器是centos 8
sudo yum install yum-utils
然后:
vi /etc/yum.repos.d/nginx.repo
粘贴进以下内容:
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
默认采用stable版本的nginx包,如果想用mainline版本的nginx包,运行以下命令:
sudo yum-config-manager --enable nginx-mainline
安装nginx:
sudo yum install nginx
然后官方文档下面放了一段:
当提示接受GPG密钥时,请验证fingerprint是否与573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62匹配,如果匹配,请接受它。
当然如果嫌麻烦,好像可以用:
yum install nginx -y
直接安装(我真是说了一堆废话hhh)
至此nginx安装完成了。通过键入
nginx
启动nginx服务器,这时在浏览器输入服务器IP,应当可以看到nginx欢迎页面。
配置nginx.conf
首先cd到nginx路径下。
(想要找nginx.conf的路径的话,可以百度,官方文档上说,它默认在
cd /etc/nginx #我的是这个
cd /usr/local/nginx/conf
cd /usr/local/etc/nginx
三种路径之一)
然后
vi nginx.conf
对http(也就是80端口),设置成:
server {
listen 80;
listen [::]:80;
root /var/www/html;#就是刚刚的传到服务器上的文件路径
index index.html index.htm;#首页文件
server_name your_domain www.your_domain;#域名
location / {
try_files $uri $uri/ =404;
}
}
https(443端口)也类似进行配置
配置完成后,重启nginx服务:
nginx -s reload
(如果要配置nginx开机自启动,可以键入:
systemctl enable nginx.service
如果用源码编译安装的,可以百度查找
)
至此配置完成!
键入域名或服务器IP,即可访问网页。
需要注意的是,如果原网站的目录里有需要访问的数据文件等build没有涉及的文件,需要将它们也传到服务器上(或者可以直接把整个文件目录传到服务器上)。