www.liuguofu.top(欢迎访问,暂时没啥实用功能)
虽然是从零开始,但是要有一个前后端分离的项目呀,我们部署从零开始~(前不久实现了使用Github webhook自动化更新网站内容啦,具体请看:这篇文章)
-
阿里云买ECS云服务器(¥1000/3年)
-
iterm终端输入后面命令行按提示输入密码,密码方式登录远程服务器:ssh
root@xxx.xx.xxx.xx
(ssh是mac自带,window需先下载) -
服务器密码登录改为密钥登录(方便、安全):
1. vim /root/.ssh/authorized_keys 2. 复制公钥(自己电脑的公钥,可自行搜索如何生成)粘贴到/root/.ssh/authorized_keys 3. chmod 600 /root/.ssh/authorized_keys(改文件权限) 4. chmod 700 /root/.ssh/(改文件权限) 5. vim /etc/ssh/sshd_config 6. 设置私钥登陆(将后面文字粘贴在改文件中):RSAAuthentication yes PubkeyAuthentication yes 7. 留意 root 用户能否通过 SSH 登录:PermitRootLogin yes 8. 当完成全部设置,并以密钥方式登录成功后,再禁用密码登录(留条后路):PasswordAuthentication no 9. 重启 SSH 服务:service sshd restart
-
配置服务器(自己花大洋买的,格外珍惜,直接在服务器内安装软件,当然你也可以docker一切)
- 安装nginx:
-
nginx的安装依赖于以下三个包(用yum下载):
yum install openssl
yum install zlib
yum install pcre
-
安装nginx其他依赖项和nginx:
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum install nginx
- 启动 nginx :
service nginx start
- 直接在浏览器访问localhost就会出现nginx欢迎界面表示你安装成功了~
-
- 安装node:
yum install node
(留坑待改进,具体可往下看) - 安装pm2:
npm install -g pm2
(安装完node之后可以使用npm) - 安装git:
yum install git
- 安装nginx:
-
部署项目(关于服务器的配置问题以后慢慢丰富)
- 如果将项目上传到github等远程仓库可以直接在服务器上使用git对代码进行管理并线上打包 or 使用fileZilla上传文件,连接之后可以拖拽管理。
- 阿里云控制台安全组端口号暴露80(如果想使用任何端口都需要在控制台提前手动配置)
- nginx配置
- 监听80端口,指向vue打包的静态文件目录
- 监听/api/前缀,将发向后端的http请求转发到3000端口
- 注意vue-router history模式刷新失效问题
- 确保ngix启动用户是root
-
域名解析 (至此你的网站可以使用ip地址进行访问啦,如果想要域名进行访问接着进行如下操作)
- 域名要实名认证 whois
- 然后在有服务器的账号下,申请服务器备案,备案时间大概20天左右,严格按照阿里云备案要求操作就可以,需要注意的是(网站名称不能有网站两字,写清网站用途,如果信息有问题会接到备案人员电话提醒,按要求修改即可)
- 工信部备案完成还要进行公安联网备案,具体要求也可参考阿里云提示,可以下载个阿里云的app,操作方便一些。
-
https(至此你的网站可以使用域名访问了,如果想要使用https 让自己的网站更正式一点,接着进行如下操作)
-
前提1域名已经申请备案
-
前提2https是按访问量收费的
-
前提3在阿里云的SSL证书模块下载一个免费证书(个人网站使用免费的就可以,有需求可以购买其他证书)
-
这里就简单的使用了阿里云的https配置,开启后域名的解析地址也要改成相应的#CNAME,就生效了,应该是也可以把证书下载下来在nginx服务器上进行配置,学习一下之后再更新
- 将阿里云上的ssl证书下载后会有.pem 和.key两个文件
- 将上面两个文件上传至服务器(/usr/local/nginx/cert)没有目录自己mkdir就可以
- 更改配置文件(建议直接复制)
- 记得登录阿里云安全组开放443端口
- 重启nginx(——可能也要重启一下后端服务和数据库)
- 访问自己网站就是https的啦
server {
# listen 80;
# server_name localhost 127.0.0.1;
listen 443 ssl;
server_name www.liuguofu.top;
ssl_certificate /usr/local/nginx/cert/xxx.pem;
ssl_certificate_key /usr/local/nginx/cert/xxx.key;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
client_max_body_size 5m;
location / {
root /root/xxxx;
index index.html index.htm;
}
location /static {
alias /var/www/html/static;
index index.html;
}
....
}
server {
listen 80;
server_name www.liuguofu.top;
# 强制跳转https
rewrite ^(.*) https://$server_name$1 permanent;
}
-
至此,一个前端小白就费劲扒拉的把自己的个人网站捣鼓上线了~开心
-
常用指令:
-
ps -ef |grep nginx(查看nginx启动是否成功)
-
ps aux | grep mongod(查看mongodb启动是否成功)
-
kill -9 xxx(停止进程)
-
vim /etc/nginx/conf.d/default.conf(编辑nginx配置文件)
-
pm2 start npm — start(pm2启动后台服务器)
-
nginx -s reload(重启nginx)
-
-
小坑
- favicon.ico放在/root根目录下,否则换名字。
- mongod –config /usr/local/mongodb/mongodb.conf(启动mongodb)
- child process started successfully, parent exiting(表示mongodb启动成功标志)
-
大坑
- 报错mongodb无权限: mongorestore -u root -p 123456 –authenticationDatabase=admin -h localhost:27017 -d test_all_backend /root/test_all_backend_db/
- 报错:Spawning PM2 daemon with pm2_home=/root/.pm2(node版本太低)
- 阿里云服务器升级node版本
- blog.csdn.net/weixin_4154…
- 阿里云服务器安装mongodb
- blog.csdn.net/qq_38461232…
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/17265.html