近日得闲,计划将之前写过的一些小桌面程序搬到云服务器上方便随时随地使用,同时也学习一些基本的网站开发和搭建知识,于是在AI的帮助下,基于nicegui+fastapi非常快捷地搞出来了一个前后端一体的网站程序,放在云服务器上直接运行也能够快捷地通过ip+端口访问,但总觉得没逼格,于是又开始了解nginx,因为这块实在是陌生,趁着刚刚实现手还热写一篇博客记录一下方便日后查阅。
实现本博客内容需做的准备(欢迎使用我的邀请链接在阿里云下单,你可以获得折扣我也会有返利):
https://www.aliyun.com/minisite/goods?userCode=4qt7u0wp
1、一台云服务器(阿里云新用户有500的试用额度,可以申请免费试用的服务器)
2、一个域名(我在阿里云万网购买的域名,一年不到十块钱)(建议完成备案)
3、一组证书(阿里云有免费证书可以申请 一年20张 支持单域名90天 藏得略深)
做好以上准备后开始动手:
1、测试确认你的web程序可以通过公网ip+端口形式访问(这里需要调整安全组入策略放开程序端口,测试可用后记得关闭)
2、在阿里云域名管理页面进行dns解析,将域名指向你的ip地址
完成域名解析并生效后,你就理应可以将域名替换为原先的ip部分通过http模式访问你的web程序了
如123.456.789.22:12345可以变为youryuming.com:12345
3、在服务器下载nginx
我这里用的是windowsserver,下载下图版本的nginx
https://nginx.org/en/download.html
4、配置nginx
在该路径新建文件夹,命名为ssl,将证书文件放进去(证书在阿里云申请免费版 很快 不到十分钟就能下)
然后返回上一级配置nginx.conf
这个配置可以让以http形式访问的请求转为https
这里配置了证书信息 密码套件 安全协议 并指明了需要反向代理的目标应用端口
保存配置后,即可运行nginx
在这里输入cmd并回车 在弹出的命令框中输入“nginx”即可运行 这时你应该可以通过域名在公网访问到你的服务器 如果没有运行程序,则会显示nginx的502错误
成果展示:
完美实现了https代理 证书、密码套件等都显示安全 比直接用ip加端口正式且安全多了
欢迎试用 https://tools.draina.xyz/
——END——