摘要:本文将带你了解WEBAPP开发之Ubuntu使用Nginx代理Restify创建的WebApp,希望本文对大家学WebApp有所帮助。
要使用Nginx代理Restify创建的Webapp,首先要在我们的服务器上安装Nginx,下载Restify模块(本例不介绍安装NodeJs)并创建WebApp,使用Nginx代理。PartⅠ: 在安装Nginx时,直接执行apt-getinstallnginx,如果自带的软件源中包含nginx即可安装成功,如果自带的软件源中没有包含nginx,则手动执行apt-add-repositoryppa:nginx/development添加软件源后执行apt-getinstallnginx。
安装Nginx
安装成功后,执行命令:$sudo/etc/init.d/nginxstart将nginx服务器开启。出现如下提示则开启成功。
nginx开启成功
当Nginx服务开启成功时,我们可以使用ifconfig查看该机器(虚拟机)的ip地址,如下图:
ifconfig查看ip地址
当我们查完ip地址之后可以通过拷贝ip地址到浏览器或者执行命令wgethttp:xxx.xxx.xxx.xxx,如果出现以下两种图片所示,即为Nginx开启服务成功。
wget访问
浏览器访问成功的页面
注意:如果是在虚拟机上配置的Nginx,使用命令行在虚拟机上可以使用wget得到响应,在宿主机无法使用浏览器访问时可能有以下两种情况: 1、虚拟机自带的iptables防火墙开启了,我们应该将它关闭。以Ubuntu为例:ufwdisable。 2、如果使用VirtualBox或者VMWare等启动的虚拟机,在网络设置时为了省事不要使用NAT方式,方法是将网络连接方式改为桥接。如使用NAT方式设置,可参考NAT。Part Ⅱ: 当服务器有了NodeJs,我们可能还需要安装NodeJs的Restify模块,Restify是NodeJs的一个开发框架,我们安装了Restify之后可以在NodeJs文件中引用。 安装Restify的方法也比较简单,当服务器上安装了NodeJs之后,可以直接使用NodeJs带的npm命令执行npminstallrestify(前提npm命令配置了全局),如果没设置全局的话,要手动cd到/home/kun/mysofltware/node-v0.10.28-linux-x64/bin/文件夹下执行npminstallrestify命令。上述/home/kun/mysofltware/node-v0.10.28-linux-x64是我机器的安装目录,在配置时应注意替换。出现下图显示的类似内容,则表示安装成功。
Restify安装成功图例
PartⅢ: 使用restify创建最简单的WebApp。vimtest.jsvarrestify=require('restify');varip_addr='127.0.0.1';varport = '3000';varserver=restify.createServer({ name:"myapp"});server.listen(port,ip_addr,function(){ console.log('%slisteningat%s',server.name,server.url);}); 保存运行该js文件时输出:myapplisteningat//127.0.0.1:3000 或者向下图中实例一样:
restify创建webapp实例
PartⅣ: 使用Nginx反向代理NodeJs文件。主要是需要修改Nginx的配置文件,一般位于/etc/nginx/文件夹下。 vim/etc/nginx/nginx.conf 在http标签下添加: server{ listen80; server_name192.168.1.114; location/{ proxy_pass192.168.1.114:3000; } }
nginx.conf文件配置
配置完成后保存,重启Nginx,通过该配置,访问Nginx地址//192.168.1.114(:80)/的请求会被转发到my_server服务地址//192.168.1.114:3000/。
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之WebApp频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号