2、netcore跨平台之 Linux部署nginx代理webapi

上一章,咱们讲了在linux上安装netcore环境,以及让netcore在linux上运行。linux

这一章咱们开始讲在linux上配置nginx,以及让nginx反向代理咱们的webapi。nginx

什么nginx???c++

Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。程序员

在高链接并发的状况下,Nginx是Apache服务器不错的替代品,并且如今愈来愈多的公司都开始用nginx,学习nginx是程序员必不可少的一部分。web

 

现实用xshell登陆到咱们的linux系统中。shell

输入以下命令vim

安装编译工具和对应的库文件,输入下面的命令,回车便可api

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

以下图示,就表示安装好了。浏览器

 

 

接下来,咱们正式安装Nginx,咱们此次选择安装1.6.2版本。服务器

(1)下载nginx,输入下面命令,回车便可。

wget http://nginx.org/download/nginx-1.6.2.tar.gz

nginx比较小,下载起来仍是蛮快的,以下图所示,表示下载完成。

 

 

 

 (2)解压nginx压缩包

tar zxvf nginx-1.6.2.tar.gz

(3)进入到nginx目录中

cd nginx-1.6.2

(4)编译和安装,分别执行下面的命令

./configure --prefix=/usr/local/nginx
make

 

 

 (5)查看版本

/usr/local/nginx/sbin/nginx -v

看到下面这个表示成功了

(6)启动nginx

 

/usr/local/nginx/sbin/nginx

而后在你的电脑上用浏览器访问便可

注意这里的默认监听端口是80,因此输入ip加上80端口便可

出现以下这种视图就表示成功了。

 

 

 

 

接下来就是很关键的配置了,其实安装仍是很简单的。

 进入到你的nginx的安装目录下

分别输入以下命令,便可查看到您的配置信息

cd  /usr/local/nginx/conf
ll

 

编辑您的nginx.conf文件,我这里用vim进行编辑

vim nginx.conf

出现如图所示:

 咱们主要看以下图所示红色标记的部分

 

 

listen:表示当前的代理服务器监听的端口,默认的是监听80端口。注意,若是配置了多个server,这个listen要配置不同。

server_name:表示监听到以后须要转到哪里去,这时咱们直接转到本地,这时是直接到nginx文件夹内。

location:表示匹配的路径,这时配置了/表示全部请求都被匹配到这里

root:里面配置了root这时表示当匹配这个请求的路径时,将会在这个文件夹内寻找相应的文件,这里对咱们以后的静态文件伺服颇有用。

index:当没有指定主页时,默认会选择这个指定的文件,它能够有多个,并按顺序来加载,若是第一个不存在,则找第二个,依此类推。

而后咱们把上面的location进行了修改

用键盘的上下左右键把光标移动到以下位置

 

而后输入键盘的 i(键盘的字母i)进入到编辑模式(这里是给不懂linux说的,懂得人请无视)

而后用键盘的退回 ←把这里的都删除

 

 而后在输入  proxy_pass http://localhost:6666;(这里接上一章已经配置好的netcore webapi)

 

 

 而后点击键盘的ESC退出编辑状态

而后输入:wq退出并保存

:wq

 

 这样就保存配置结束了,conf配置其实很复杂,网上有不少根据不一样需求进行的配置

你们有兴趣能够去看看,我这里只说入门的部分,额,其实入门都算不上,能用就行,哈哈哈

最后执行下面两个命令

这里是检查配置

/usr/local/nginx/sbin/nginx -t

 

 最后一个就是重启运行nginx

/usr/local/nginx/sbin/nginx -s reload

 

 

哦,最后咱们看看效果,额

这里必定不要忘记启动个人netcore程序了

输入命令进入到咱们的项目中

cd /root/netcore/

而后输入启动程序的命令

dotnet WebApiTest.dll

以下图所示,就表示启动成功了

 

 

 

 而后,咱们用测试工具测试一下咱们的接口

如图所示,咱们把之前的6666接口换成了80端口,这里仍是访问成功了,这就表示咱们的nginx代理成功了

 

 

 

 

 

到这里就基本结束了,不过你们必定有个奇怪的地方每次启动netcore,每次关了你的xshell后就不能访问了,

这里建议使用下面的命令,使之成为后台进程便可

nohup dotnet  WebApiTest.dll  &

over !!!!!!!!!!!!!!!!!!!!!!!!

相关文章
相关标签/搜索