零基础学习 nginx + tomcat

操作系统win7

1.首先,搞清楚web 服务器和 tomcat的区别,以及为什么要用nginx+tomcat:

我们平时对j2ee开发的时候使用的是tomcat服务器,tomcat服务器是用来解析servlet动态网页的,比如jsp。而apache web服务器只能处理静态页面,如html,css等。

其实tomcat也可以解析静态页面,但是效率很差,我们在开发的时候因为注重开发,并不用考虑性能问题,所以并不需要Apache。但是在实际应用中,性能问题是很重要的,所以我们要同时使用web服务器和tomcat服务器。把静态页面交给web服务器,把动态处理交给tomcat。

现在比较流行的是nginx + tomcat的运用。

2.其次了解 eclipse的tomcat的原理避免中间遇到的问题(eclipse启动tomcat看不到欢迎界面):

我的eclipse已经安装了tomcat,但是当我启动tomcat开始一个项目的时候是没问题的,但是当我输入:“localhost://localhost:8080” 确是404错误。这时因为默认下载的tomcat/webapps 下面有个ROOT项目没启动。我们平时靠terminal启动tomcat时,tomcat会启动webapps下面的所有的项目。

而eclipse集成的tomcat是一个容器,并没有Root这个项目。换一种说法:在eclipse下启动你可以看到一个Server的项目,下面有个server.xml文件,在这个文件中有一个Host标签,里面有一个Context标签,这个标签的作用是告诉tomcat需要启动的项,这里并没有ROOT项目。总之,eclipse压根就没有在webapps下启动。只启动了需要启动的项目而已,那怎么样才能让eclipse启动到webapps呢,也就是我们所要看到欢迎界面?

3.设置tomcat的server location 把eclipse的项目直接发布到tomcat的webapps下面。

这样的话就可以看到欢迎界面了。

清除 Server下面的所有发布的项目,然后右击,选择“clean...”

这个时候就可以选择第二项了,如果不clean...是不能选择的。是灰色的。

注意Deploy Path 就是我们需要发布的地方要写webapps,这就是我们要把项目发布的地方,也就是tomcat默认项目的地方。

重启进入 http://localhost:8080 就可以看到欢迎界面了。

4.下载nginx 我的是window7 不需要安装,直接解压就可以用。

配置文件:nginx-1.6.2\conf\ 下面的nginx.conf

里面有太多参数,初步实现只要记住这几个参数,其他参数可以翻书:

server {

listen       80;  #监听80接口

server_name  localhost:8080;

location ~ (\.jsp)|(\.action)$ {

proxy_pass http://localhost:8080;

}

location ~ \.(html|js|css|png|gif|jpg|JPG)$ {

root C:/harvey/apache-tomcat-8.0.14/webapps/ROOT; #注意反斜杠

}

}

这个服务: 监听的是80端口的请求

第一个location的意思 .jsp和.action结尾的都被 proxy_pass 到http://localhost:8080; 就是说jsp 页面和 action操作,也可以是.do操作都被交给localhost:8080
处理,就是tomcat处理。

第二个location的意思:所有html js css png jpg JPG结尾的文件都去 下面这个root所指向的地址寻找。

这里主要是以正则表达式表达的匹配。

所以只要修改这些,初步的功能就能实现了,其他的一些参数以后再说。

然后开启tomcat 开启nginx

在地址栏输入localhost:80 会显示404 nginx的错误,因为它不知道你这是什么请求。

在地址栏输入localhost:80/index.jsp, 他就会跳到 localhost:8080/index.jsp 这就是tomcat的欢迎页面。

如果我们在地址栏输入localhost/tomcat.png 他就会去我们指定的C:/harvey/apache-tomcat-8.0.14/webapps/ROOT 去找。

这样我们就可以初步的把静态的放在web服务器上,动态的交给tomcat处理。

时间: 2024-10-26 17:45:41

零基础学习 nginx + tomcat的相关文章

Yaf零基础学习总结3-Hello Yaf

Yaf零基础学习总结3-Hello Yaf 上一次我们已经学习了如何安装yaf了,准备工作做好了之后我们来开始实际的编码了,码农都知道一个经典的语句就是“Hello World”了,今天我们开始入手Yaf,目标只要能得到“Hello Yaf”就可以了,不多说,下面开始了.(注:需要读者有一定的MVC知识基础,最好用过一些其他简单的框架) 1.组织目录结构 对于使用过框架的来说这点很好理解,对于没使用过框架的来说建议先别在这死磕,先记着吧,简单点就是对于我们的文件结构做一些规定,让自己和别人都能看

Android 零基础学习之路

第一阶段:Java面向对象编程 1.Java基本数据类型与表达式,分支循环. 2.String和StringBuffer的使用.正则表达式. 3.面向对象的抽象,封装,继承,多态,类与对象,对象初始化和回收:构造函数.this关键字.方法和方法的参数传递过程.static关键字.内部类,Java的垃极回收机制,Javadoc介绍. 4.对象实例化过程.方法的覆盖.final关键字.抽象类.接口.继承的优点和缺点剖析:对象的多态性:子类和父类之间的转换.抽象类和接口在多态中的应用.多态带来的好处.

蓝鸥零基础学习HTML5—html+css基础

蓝鸥零基础学习HTML5-html+css基础 一.课程目标 1.了解前端开发职位:2.掌握常用标签以及语义及用法:3.掌握常用css的特性,掌握基础布局技巧:4.掌握整站规划概念. 二.适用人群 零基础积极学习html5者 三.课程简介 本课程主要讲解了 html+css的基础知识,包括html模板.标签.css基础样式.布局.表格表单.整站等等,是进行前端开发的基础.Html+css是前端开发的基础,大部分前端开发工程都需要从html+css布局开始,html+css的基础非常重要,是前端开

零基础学习 Hadoop 如何下手

想学习hadoop,可是苦于自己没有任何的基础,不知道该如何下手,也不知道自己能不能学会.其实零基础学习hadoop,没有想象的那么困难.曾经我也是一位小白,刚接触到云计算,想过培训,但是培训机构的选择也让我很纠结,就自己开始去摸索学习,现在我把自己的学习思路整理一下,希望对大家有帮助. 首先整体说一下学习过程给大家借鉴: 一.了解hadoop: 这里不具体阐述概念,有兴趣的同学可以自己上网去查.我们知道hadoop,有单机安装,伪分布安装和分布安装.同时hadoop的环境是Linux,所以我们

[原]零基础学习SDL开发之在Android使用SDL2.0显示BMP图

关于如何移植SDL2.0到安卓上面来参考我的上一篇文章:[原]零基础学习SDL开发之移植SDL2.0到Android 在一篇文章我们主要使用SDL2.0来加载一张BMP图来渲染显示. 博主的开发环境:Ubuntu 14.04 64位,Eclipse + CDT + ADT+NDK 博主曾经自己使用NDK编译出了libSDL2.so,然后使用共享库的方式来调用libSDL2中的函数,结果发现SDL\src\core\android\SDL_android.c 这个jni函数写的实在是不够自己另外做

Yaf零基础学习总结2-Yaf框架的安装

接着上一篇文章<Yaf零基础学习总结1-Yaf框架简介>我们对Yaf框架有那么一个大概的了解了,但是对于程序员来说,那些文字都是表面的,他们最想的就是开始敲代码了.当然这也是学习Yaf框架最有效的方法,敲得越多肯定学得越快,对于任何语言来说也是一样的,在写代码之前我们得把Yaf框架安装上. 相比于其它PHP框架,Yaf是作为PHP的一个扩展发行的,我们也知道他是基于C语言实现的,我们看不到它的PHP代码,当然有C语言背景的人可以去看下他的C源码.知道安装PHP扩展的人基本可以略过本文了,因为Y

零基础学习Vim编辑器

**********************************************************************0.这篇教程的简介:Vim是Linux/Unix下的经典编辑程序,它高效且专注,灵活且强大,是Linxu/Unix环境下编程人员.文字排版人员和系统管理员必须掌握的一项基础技能但是由于一些我们后文会介绍到的历史原因,Vim编辑器的学习难度远远高于其它编辑器,但是我相信通过我这篇教程的引导,您一定可以熟练地运用Vim!1.需要注意的    :这是一篇“零基础的

【零基础学习App嵌入广告】【01-开篇】

[零基础学习App嵌入广告][01-开篇] 本文目录 一.什么是App广告 二.学习App广告的目的 三.App广告常用术语 四.App广告分类 一.什么是App广告 App广告是指智能手机和平板这类移动设备中第三方应用程序内置广告.广告投放商找广告平台投放广告,平台再把广告让开发者展示,从而形成了App广告的产业链. 二.学习App广告的目的 在移动App的世界里,免费才是王道,很多人不愿意花钱购买程序,因此开发者不得不寻求其他的途径赚钱,目前免费下载+App广告是开发者最主要的盈利模式,因此

[原]零基础学习SDL开发之在Android使用SDL2.0显示BMP叠加图

关于如何移植在android上使用SDL,可以参考[原]零基础学习SDL开发之移植SDL2.0到Android 和 [原]零基础学习SDL开发之在Android使用SDL2.0显示BMP图 . 在一篇文章我们主要使用SDL2.0来加载一张BMP图来渲染显示,同时叠加一张图作为背景图. 博主的开发环境:Ubuntu 14.04 64位,Eclipse + CDT + ADT+NDK 在前面两篇文章我们知道了如何移植SDL2.0到android上面来,并且可以在Android上面来显示一张图片,这篇