准备:阿里云服务器,ip地址(公),实例的密码,
1,本地连接到远程服务器流程
1)生成密钥,绑定到ip,重启服务器
2)打开Xshell,新建,账号:root,密码:实例的密码。导入密钥直接链接
2,部署流程
https://blog.csdn.net/qq_38177305/article/details/79532023
https://www.jianshu.com/p/03d17156616d
3,访问http://+ip ngnix 出 bug
https://blog.csdn.net/ownfire/article/details/7966645
https://blog.csdn.net/ljfphp/article/details/78670459
https://www.cnblogs.com/iloverain/p/9428630.html
4,404 nginx重定向配置
https://blog.csdn.net/weixin_43819222/article/details/89963155
5,查看进程端口被占用
图片.png
6,Hexo 部署自己的博客网站
https://www.jianshu.com/p/5776fb872ce7
7,ssl证书(阿里云)上传到服务器
步骤是按照阿里云文档操作的
https://help.aliyun.com/document_detail/98728.html?spm=a2c4g.11174283.6.574.22e46fd4F6U3g9
但是中间遇到几个问题
1)关于 nginx.conf 配置文件修改后。阿里云文档没有说要把#注释符号删除
2)关于重启nginx的方法,使用阿里云提供的方法不行
图片.png
我用的方法是:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
3)阿里云上没有说,443端口需要手动在阿里云后台开启
去检查一下你的服务器的安全组配置,看一下是否加入了443端口的链接,防止后面连接不上。创建的新规则如下图。
图片.png
4)配置完nginx.conf文件后重启nginx服务器,报错
nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf 201
意思是配置文件缺少nginx依赖模块ngx_http_ssl_module
安装ngx_http_ssl_module模块
我的nginx安装目录在:
图片.png
源码在(root根路径下):
图片.png
图片.png
a,进入nginx源码包文件
图片.png
b,查看nginx原有的模块
图片.png
没有任何模块
c,从新配置SSL模块
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
配置完成后,运行命令make命令:
make
d,替换已安装好的nginx包
替换之前先备份:
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
先停止nginx服务:
//查询nginx主进程号
$ ps -ef | grep nginx
//从容停止Nginx:
$kill -QUIT 主进程号
//快速停止Nginx:
kill -TERM 主进程号
//强制停止Nginx:
pkill -9 nginx
e,将刚刚编译好的nginx覆盖掉原有的nginx
cp ./objs/nginx /usr/local/nginx/sbin/
图片.png
图片.png
总结重启ngnix的方法:
查看进程占用:ps -ef | grep nginx
杀死进程: kill 8899
启动nginx: /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
5),配置完后,访问https对应的网页,出现nginx页面,不是上传到服务器的网站
原因:
配置nginx.conf 文件的时候,漏掉了默认跳转到网站
需要以下配置,location指向前端源代码目录
图片.png
然后重新启动nginx
网友评论