我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

在以前的学习中,大家可以知道:基于thinkjs的网站,在生产模式下,需要使用nginx作为代理,才能正常使用。否则会引发一系列匪夷所思的问题。

苏南大叔:nginx如何代理基于thinkjs的node网站? - nginx-thinkjs-node
nginx如何代理基于thinkjs的node网站?(图4-1)

本篇文章中,苏南大叔将要讲述,如何利用nginx对接thinkjs的网站。本文的前提是,您已经安装好了nginx,并且有一个thinkjs的网站项目代码,并且已经安装好了PM2。如果您还有没有准备好的项目,请参照本文最下方的“关联文章”内容,进行设置。

修改关键配置文件

首先,苏南大叔的思路是先修改thinkjs端口,然后用pm2启动网站,然后在nginx里面设置vhost,将ng80端口代理到thinkjs的新端口。所以,配置思路是这样的:

src/config/config.js 修改port设置,当然不修改的话,默认就是8360端口。

苏南大叔:nginx如何代理基于thinkjs的node网站? - 020
nginx如何代理基于thinkjs的node网站?(图4-2)

注意:这里不能修改端口号为9000,原因是:9000端口是php-fpm的默认端口,而接下来,苏南大叔还要设置php共存。所以,在这里,不能埋下冲突隐患。

使用pm2启动thinkjs网站

如果你项目根目录下面的pm2.json配置确认路径正确的话,就可以使用pm2启动这个网站了。

pm2 start pm2.json

启动完成后,在服务器上面,就可以使用127.0.0.1的相关端口(默认8360)访问了。

使用nginxvhost代理node网站

苏南大叔把thinkjs项目根目录下面的nginx.conf文件复制到nginx配置文件的server目录下面。如果您的nginx是使用brew安装的话,那么默认配置文件的位置,可能是这里:

/usr/local/etc/nginx/servers/<yourname>.conf

然后苏南大叔根据需要再进行修改设置,里面非常要注意的一项是:一定要注意nginx中的root是thinkjs下面的www目录。并且,thinkjs需要开启production模式。否则会出现静态资源不能访问的情况,具体可以参考这篇文章:

苏南大叔:nginx如何代理基于thinkjs的node网站? - 021
nginx如何代理基于thinkjs的node网站?(图4-3)

测试nginx设置

老生常谈的操作如下,不做赘述。

nginx -t
nginx -s reload

苏南大叔:nginx如何代理基于thinkjs的node网站? - 011
nginx如何代理基于thinkjs的node网站?(图4-4)

总结

熟能生巧,多操作操作,总是没有什么问题的。大家加油!

参考文章

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   nginx    pm2