有一个Java的原生态代码需要配置代码服务器配置

&&完想在一个服务器上同时运行php和java web程序,并使用不同的域名访问80端口,谁能提供最好的技术呢?高分求给力想在一个服务器上同时运行php和java web程序,并使用不同的ip访问80端口我自己之前用过nginx配置访问两台服务器上不同IP地址的tomcat程序,但是还没在一个服务器上搞过我说的这种要访问php、还要访问java web的配置。php使用apache作为服务器;java web使用 tomcat作为容器,当然肯定还是以apache作为服务器;网上有讲解说使用Apache+Tomcat整合并配置虚拟主机来访问同一服务器上的不同应用,但是讲解没那么细致,导致我没理解过来###要不难道要使用nginx + apache + tomcat? 不知道哪位前辈做过,如果没做过,您是否考虑过这种情况呢?是否您能给出最给力的答案呢?高分求最真实的回答,谢谢大家!!!90个牛币所有回答列表(5)&LV14看着!最简单的方式!既然你用过nginx,那我们就用这种方式来解决。原理:配置代理.1.开启 php + apache 占用808端口,为程序入口2.开启 tomcat ,修改端口为8080,为程序入口3.开启 nginx 占用80端口,为请求总入口,以请求路径进行区分.如:www.test.com 则是通过nginx代理访问 php 808入口,www.test.com/java ,则是通过nginx代理访问 tomcat 8080端口.&nginx 配置文件:&upstream app_server{ && & & & server 127.0.0.1:808;& & }upstream java_server{ && & & & server 127.0.0.1:8080;& & }& & location /&&& &{&& & & & &index index.php index.html index.&& & & & &proxy_& & & & & & & proxy_set_header Host $& & & & & & & proxy_set_header X-Real-IP $remote_& & & & & & & proxy_set_header X-Forwarded-For & $proxy_add_x_forwarded_& & & & & & & proxy_pass http://app_& & &}&&location /java&& &{&& & & & &index index.jsp index.html index.&& & & & &proxy_& & & & & & & proxy_set_header Host $& & & & & & & proxy_set_header X-Real-IP $remote_& & & & & & & proxy_set_header X-Forwarded-For & $proxy_add_x_forwarded_& & & & & & & proxy_pass http://java_& & &}最佳答案&LV13490牛币高分悬赏,这是真土豪。先问你2个问题:1.为什么一台服务器要用2个ip呢?2.为什么php和java的请求只能通过端口来区分呢?给你我的解决方案:这台服务器对外肯定只有一个ip,对外只开放前端负载均衡nginx 80端口,php和java的程序通过域名或者后缀让nginx把请求转发给后端服务,apache或tomcat。不同域名:java.xxx.com/a.jspphp.xxx.com/a.php不同后缀xxx.com/java.jspxxx.com/php.phpnginx的配置网站一大把,你自己解决下吧。&LV23标准土豪。。&LV51、单网卡,配置2个IP地址,1个PHP监听1个IP的80端口,javaweb监听另一个IP的80端口。2、双网卡一样的,配置2个IP地址。3、虚拟机,加个系统,配独立IP即可。&LV2nginx 代理转发等等等等等等等完等等等等相关问答完完完完等等等完完等最近浏览&LV1&LV2暂无贡献等级&LV1暂无贡献等级&LV3暂无贡献等级&LV11暂无贡献等级&LV1扫描二维码关注最代码为好友"/>扫描二维码关注最代码为好友javaweb部署服务器 详细版
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!做一个完整的Java Web项目需要掌握的技能 - 简书
做一个完整的Java Web项目需要掌握的技能
最近自己做了几个Java Web项目,有公司的商业项目,也有个人做着玩的小项目,写篇文章记录总结一下收获,列举出在做项目的整个过程中,所需要用到的技能和知识点,带给还没有真正接触过完整Java Web项目的同学一个比较完整的视角,提供一个所谓的“大局观”,也以便于同学们更有针对性地学习。当然,这里所用到的例子项目是非常初级,简单的项目,所以大神们就可以不用往下看了。
首先我们从网站的架构谈起。一般来说,我们将网站分为前端和后端。前端主要负责页面的展示,后端则是业务逻辑的实现。由于html5的兴起,前端领域已经越来越火热,前端技术发展极快,今天我们不做过多介绍,因为现在的互联网公司,前端工程师和Java工程师是完全不同的两种技术岗位。所以我们还是以Java的角度去看待一个项目。在前端没有那么火的前几年,或者说在经典的Java Web的开发模式中,我们使用Jsp技术来作为展现层的实现,其实也就是所谓的前端。当然只懂得Jsp是不够的还需要懂html,css,js,ajax等一些前端的基础技术,Jsp技术在其中扮演外层包装的角色。那么后端呢?后端是由于一些实现了业务逻辑Java代码和数据库组成。说到这,就可以推出Web开发中经典的MVC模式,Model-View-Controller。View,,就是指表现层,Model,是用来承载数据的抽象结构,而Controller则是View和Model的桥梁。View存在与前端代码中,Controller,Model存在与后端代码中。在后端代码中,为了保证代码的整洁,易读性,一般会采用分层的办法,自顶向下分为controller层,service层,dao层,数据层或者叫持久层(直接与数据库打交道)。有时候,为了达到解耦的目的,会在上述基层中间加入响应的接口层,以使得接口与实现分离。在更加大型的网站中,会出现更加复杂的架构,比如dao层与数据层之间要有缓存层,或者访问压力增大后,需要使用集群,负载均衡等高级技术,但在这里,我们就不深入讨论复杂架构了。
所以以上我们看到,一个Web 项目前端需要表现层,后端有controller层,service层,dao层,持久层。在表现层,除了刚才提到的html,css,js,ajax,jsp等基础知识,在实际开发中,我们还会用到许多框架技术,比如tiles,velocity,freemarker等模板技术来简化表现层的开发。在持久层,除了jdbc外,还有Mybatis,Hibernate等框架来提高开发效率。在Java Web中最耀眼的当属Spring了,Spring作为一个贯穿整个项目的框架,为项目开发带来依赖注入,面向切面编程的功能。除了这些,我们还需要熟练掌握一种关系型数据库的使用,如MySQL,Oracle等,当然更好地话还需要掌握一种非关系型数据库,MongoDB,Redis。
掌握了以上知识点,恭喜你,你已经可以开始写Java Web项目了。但是只会写而不会部署,我们的项目仍然不能拿出来用。所以说到这里,我们的项目代码已经写好,接下来该怎么办呢?当然是需要找一个容器来运行我们的代码。这里的容器是当然不是指Java里的数据类型,而是指应用服务器,此处要特别区分应用服务器与Web服务器,至于Web服务器是什么,稍后会介绍。(如果有同学不是很清楚服务器的概念,可以先看下一段,再回来看)目前,市面主要流行的应用服务器有Tomcat,Jetty,JBoss等。很多人会问我们为什么需要应用服务器?顾名思义,应用服务器就是用来运行我们的应用代码的。这里需要特别提到的是,Java Web用到了像Jsp,servlet这样的动态web技术,而这些技术的代码是必须运行中应用服务器中的。所以当我们写好应用代码后,需要把自己的应用部署到应用服务器上。应用部署好后,那么用户们该怎么访问呢?直接访问应用服务器吗?这个时候就需要web服务器出场了。在互联网上,最强大的应用层协议当属http协议了,人们访问网站就是通过http协议来进行访问的,而Web服务器就是支持http协议的服务器,所以就叫http服务器。Web服务器接收http请求,然后再将请求转交给应用服务器。有人会问用户直接访问应用服务器不好吗?为什么要给web服务器,然后再到应用服务器?从功能实现上来说,是可以的。许多应用服务器,比如Tomcat是具有web服务器的功能,所以直接访问也可以。但是由于在实际的生产环境中,由于负载均衡,cdn加速等原因,我们还是需要在应用服务器的前端再加一个web服务器来提高访问效率,常用的有Nginx,Apache这样的服务器。
之前老是在讲这个服务器,那个服务器,不知道有没有同学听懵了。其实服务器这个概念,我们应该在真正接触计算机专业领域之前早就听说过,比如以前打游戏觉得卡的时候大家都时不时会用到服务器这个词汇。但是我真正理解并研究服务器是在学习tomcat, jetty之后才开始的。那么服务器到底什么呢?服务器这个概念其实很简单,就是一台电脑,那它和我们日常用的电脑有什么区别?第一,它一般没有显示器,它只有主机。第二,它的操作系统不同于我们常用的windows , Mac OS。更多的是nix系统。第三,它运行了一些服务器端软件。比如说,我们上文提到的Tomcat , Jetty , Nginx,Apache,其实这些都是服务器软件,只是主机运行了这些软件,所以有时候大家就混淆了叫法。所以所谓的数据库服务器,大家也知道了,其实就是运行了数据库的主机。说到服务器,我们所需要掌握的重点知识就是服务器操作系统,也就是nix系统,比如CentOS , Ubuntu等。说到这里,其实一个简单的完整的Java Web项目就差不多了。我们简单回顾一下,首先,我们需要利用各种框架和开发技术写出应用代码。接下来,我们需要一个台安装了*nix系统的主机,在上面安装好Web服务器软件,应用服务器软件,再把我们的应用代码部署到应用服务器上。现在我们只需要获取到主机的IP地址,就能够远程访问应用了。
知识点列表:
视图层技术——HTML,CSS,JS,AJAX,Tiles,Velocity,FreeMarker
持久层技术——MyBatis,Hibernate
Spring , Spring MVC
项目构建工具Maven
版本控制 Git
数据库技术:1. SQL语句2. 参数调优
操作系统:
熟练掌握一种Linux系统,原理,Shell命令
服务器技术:
熟练使用并理解一个应用服务器技术的原理(Tomcat)
熟练使用并理解一个Web服务器技术的原理(Nginx)
缓存技术:
熟练使用并理解一种缓存技术(Redis,Memcache,EhCache)
非关系型数据库
熟练使用并理解一种非关系型数据库(MongoDB)
中间件技术:
JMS:activeMQ和kafka
RPC: Dubbo
设计模式:
了解并能够使用几种最主要的设计模式
熟练使用并理解一个网络开发技术(Netty)
熟悉http,TCP协议
Java虚拟机:
熟悉jvm运行原理,内存分布
jvm参数调优
基本不用简书了
喜欢的可以关注知乎
Java 基础思维导图,让 Java 不再难懂 - 工具资源 - 掘金思维导图的好处 最近看了一些文章的思维导图,发现思维导图真是个强大的工具。了解了思维导图的作用之后,觉得把它运用到java上应该是个不错的想法,这样回顾知识点的时候一目了然,快速知道自己的短板。 思维导图...
用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你能获得这些料: 知道setContentView()之后发生了什么? ... Android 获取 View 宽高的常用正确方式,避免为零 - 掘金 相信有很多...
用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金Cover 有什么料? 从这篇文章中你能获得这些料: 知道setContentView()之后发生了什么? ... Android 获取 View 宽高的常用正确方式,避免为零 - 掘金相信有很多朋友...
//我所经历的大数据平台发展史(三):互联网时代 o 上篇http://www.infoq.com/cn/articles/the-development-history-of-big-data-platform-paet02 编者按:本文是松子(李博源)的大数据平台发展史...
Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致了样板模式, 使用Spring Cloud开发人员可以快速地支持实现这些模式的服务和应用程序。他们将在任何分布式...
银杏小巷 周铨铨
星期天,我去了老家的一个小景点—银杏小巷。这里的银杏叶几乎全落了下来,从巷口朝里望去一片杏黄色,温暖而明亮。
银杏小巷,顾名思义:就是小巷两边一定种满了品种高贵的银杏树。风一吹,银杏叶飘舞着,杏叶香味也扑面而来。地上由一片片金黄色的银杏叶铺了一条‘‘叶...
这是一个信息爆炸的时代。 每天能看到的资讯很多,多到你看不过来。 在这个信息爆炸时代,大家养成了一种习惯,喜欢看网络爽文。 什么叫爽文呢,就是一些文字输出能力较强的人,使用一些极具煽动性的文字,向读者输出一些正确或者不正确的观点。 爽文之所以看起来特别舒服,是由于你看的时候...
问题1,孩子在学校的学习已经很紧张了,没有时间读经典,您说读了经典对识字很好,可我家孩子读了经典并没有提高他的认字水平。我家孩子可能是不适合读经典。读经两个月,今年上一年级。 答:有的孩子读经时间不长,但能认很多字。这跟孩子读经的状态有关,和孩子先前的习惯有关,和有没有认真...
人世.谁谁谁家
夜 一对情侣在看着电视,电视里放着的是《大话西游》里孙悟空的片段。情侣身旁,人形黑暗瘫坐在沙发上看着电视。java项目怎么部署到linux服务器啊?_百度知道
java项目怎么部署到linux服务器啊?
java项目,有代码有配置文件,要部署到linux服务器,怎么弄啊,不会啊。。现在情况是在eclipse里写好了代码,然后要开始打包什么的就不会了。求教学啊
我有更好的答案
1、首先需要在linux服务器上配置java环境,如安装jdk+tomcat2、配置完成jdk+tomcat环境后,需要把你的java项目复制到tomcat的webapps下3、复制到tomcat的webapps后,重启tomcat,然后访问http://ip:8080/项目名,浏览验证java项目4、安装jdk+tomcat环境如下:1)下载JDK(下面分别是32位系统和64位系统下的版本) &&&&#32位位# getconf LONG_BIT&& #& 查看系统多少位2) 安装JDK7.0版本先卸载服务器自带的jdk软件包# java -version&&&& #查看服务器是否安装过jdkjava version &1.6.0_17&OpenJDK Runtime Environment (IcedTea6 1.7.4) (rhel-1.21.b17.el6-i386)OpenJDK Client VM (build 14.0-b16, mixed mode)# rpm -qa |grep gcj&& #查看服务器安装的jdk软件包信息libgcj-4.4.4-13.el6.i686java-1.5.0-gcj-1.5.0.0-29.1.el6.i686#& yum -y remove java-1.5.0-gcj-1.5.0.0-29.1.el6.i686&&& #卸载软件包安装jdk7.0&&解压配置安装# mkdir -p /usr/lib/jvm# tar zxvf jdk-7u9-linux-i586.tar.gz& -C /usr/lib/jvm# mv /usr/lib/jvm/jdk1.7.0_09&&& /usr/lib/jvm/java7添加jdk7.0到系统环境变量# cp /etc/profile /etc/profile.bak &&&#备份# vi /etc/profile&&&&&#编辑,在最后添加下面的内容&export JAVA_HOME=/usr/lib/jvm/java7export JRE_HOME=${JAVA_HOME}/jre&&export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib&&export PATH=${JAVA_HOME}/bin:$PATH&# source /etc/profile    #使配置文件立即生效由于系统中可能会有默认的其他版本JDK,所以,为了将我们安装的JDK设置为默认JDK版本,还要进行如下工作。update-alternatives --install /usr/bin/java java /usr/lib/jvm/java7/bin/java 300&&update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java7/bin/javac 300&&update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/java7/bin/jar 300&&&update-alternatives --install /usr/bin/javah javah /usr/lib/jvm/java7/bin/javah 300&&&update-alternatives --install /usr/bin/javap javap /usr/lib/jvm/java7/bin/javap 300&&执行下面命令,设置默认版本,此命令执行后,系统会列出当前存在的各种JDK版本,会提示你选择# update-alternatives --config java测试# java -version&&&&&& # 测试是否成功&下载并启动tomcat#&cd&/data&&进入你放置的目录#&wget&#&tar&-zxv&-f&apache-tomcat-7.0.56.tar.gz#&mv&apache-tomcat-7.0.56&/usr/local/tomcat7&#&chmod&755&-R&/usr/local/tomcat7/#&/usr/local/tomcat7/bin/startup.sh
运维工程师
如果是java项目,你要部署到linux服务器,是要部署成什么效果?
代码打包,配置文件不打包,放到服务器。
你的意思是配置文件要 经常修改是吧有个方法就是在main函数里面接收 参数 (配置文件地址)这样就可以把其他的东东打包成 jar包 每次运行的时候 将配置文件地址 传进去就ok
现在是这样的,main有参数args要传进去,然后配置文件地址啥的就在参数里。然后我用ant把一堆.java文件编译打包了,生成了jar,但是那些配置文件要怎么办。还有什么地方把args传进去啊?
你把jar 包 和 配置文件 都传到服务器上去然后你运行这个jar包的同时传参数 : java -jar
path_to_config_file
那导入的包呢,怎么用的?现在把自己写的代码打包进jar了,但引用的库放在外面的lib文件夹里。还有两个代码中用的txt文件也没包进去,怎么办?
外面的 lib 文件夹 可以用 java -cp 这个命令 把jar包一个一个加进去,具体使用自己查查。那两个文件,你也按照配置文件的方法改一下呗
本回答被提问者采纳
1:把你的java项目打包为war包,在file-&export...自己找,压缩为war包即可,war包可以在tomcat下解压运行的;2:在Linux下安装Tomcat,是其运行正常;3:把war包拷贝放到Linux下tomcat的webapps目录下即可访问到该项目;4:在Linux下把Tomcat添加为开机启动项,使其开机便启动,项目开机即可访问.以上均为大致要点,具体细节自己找.
不是web项目。另外项目里有配置文件,据说不能打包进去,具体要怎么打包啊?哪些东西需要打包进去啊
为您推荐:
其他类似问题
linux服务器的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。阿里云ECS服务器,安装好java服务环境后,怎么让我的java源代码在服务器上运行?_百度知道
阿里云ECS服务器,安装好java服务环境后,怎么让我的java源代码在服务器上运行?
阿里云ECS服务器,安装好java服务环境后,怎么让我的java源代码在服务器上运行?本人还是大学生,处在入门自学阶段,购买了阿里的ECS服务器,Ubuntu。
如题,我已经按照网上的一些教程安装好了JDK、tomcat、nginx、mysql。
想请问,我要让服务器上运行我用jav...
我有更好的答案
只需要把本地写的代码原封不动的搬上去就可以,因为不清楚你具体是什么程序所以也无法告诉你迁移方法。至于你提到的监视服务器和客户端通信情况其实那也是有很多办法监视的,例如使用linux下的curl可以知道http状态是什么样的,使用wireshark可以抓取http数据包来知道服务器和客户端之间交流是怎样的一种方式。
采纳率:89%
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 代码服务器配置 的文章

 

随机推荐