比如我们有个项目想要发布到互联网上,我们首先需要购买域名以及主机,主机的话,推荐云主机(本人推荐西部数码或者阿里云),性能好;

我们先在云主机上搭建环境,比如Mysql,Jdk,Tomcat;

然后我们把自己开发的项目打包,打成War包;

具体操作;右击项目-> Export

然后点击 Next ;

选择Browse,我们随便选个地方  然后点击Finish即可;

这样我们就可以生成一个War包了;

我们把War包传到主机上去,放到Tomcat的webapps下,启动tomcat的startup.bat,会自动解压项目;

到了这里,还不够。我们只能通过 http://外网IP:8080/项目名称访问;

我们现在要干两个事情,第一个是去掉端口,第二个是去掉项目名称

我们找到tomcat安装包下的conf文件夹下的server.xml文件;

找到Connector节点;

1
2
3
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

我们把port="8080"改成80端口即可,这样我们就可以不用端口了。不加端口就是默认访问80端口;

我们在最后 找到Host节点:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<Host name="localhost"  appBase="webapps"
    unpackWARs="true" autoDeploy="true">
 
<!-- SingleSignOn valve, share authentication between web applications
     Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
 
<!-- Access log processes all example.
     Documentation at: /docs/config/valve.html
     Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
       prefix="localhost_access_log." suffix=".txt"
       pattern="%h %l %u %t &quot;%r&quot; %s %b" />
 
</Host>

我们在里面加一个节点:

<Context path="" docBase="C:\apache-tomcat-7.0.11-windows-x86\apache-tomcat-7.0.11\webapps\Blog" debug="0" reloadable="true" />

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
  
        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->
              <Context path="" docBase="C:\apache-tomcat-7.0.11-windows-x86\apache-tomcat-7.0.11\webapps\BaiduYun" debug="0" reloadable="true" />   
        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"  
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" resolveHosts="false"/>
  
      </Host>

这里的docBase要给成你的项目所在你服务器的本机的绝对路径;

其他不用变;

项目数据库脚本的话自己导入下即可;这样就完整了项目部署;

我们可以直接通过外网IP直接访问项目;

域名解析下服务器外网IP。我们就可以通过域名访问了;

如何发布Web项目到互联网的更多相关文章

  1. Maven发布web项目到tomcat

    在java开发中经常要引入很多第三方jar包:然而无论是java web开发还是其他java项目的开发经常会由于缺少依赖包引来一些不必要的异常.常常也是因为这样的原因导致许多简单的缺包和版本问题耗费大 ...

  2. eclipse中tomcat使用add and remove无法发布web项目

    继上次启动eclipse中的tomcat报classNotFound的问题后,这次又遇到新问题.就是右键点击tomcat使用add and remove发布web项目至tomcat后,启动tomcat ...

  3. IDEA社区版运行并发布web项目

    IDEA社区版相对收费版少了很多功能,其中包括tomcat等web服务器的支持.网上大部分的IDEA web应用发布教程都是基于收费版的,社区版并没有这么直接的图形化工具可以运行或发布web应用.幸运 ...

  4. Mac下Intellij IDea发布Web项目详解一

    Mac下Intellij IDea发布Web项目详解一 Mac下Intellij IDea发布Java Web项目(适合第一次配置Tomcat的家伙们)详解二 Mac下Intellij IDea发布J ...

  5. 带领技术小白入门——基于java的微信公众号开发(包括服务器配置、java web项目搭建、tomcat手动发布web项目、微信开发所需的url和token验证)

    微信公众号对于每个人来说都不陌生,但是许多人都不清楚是怎么开发的.身为技术小白的我,在闲暇之余研究了一下基于java的微信公众号开发.下面就是我的实现步骤,写的略显粗糙,希望大家多多提议! 一.申请服 ...

  6. tomcat发布web项目的三种方式

    tomcat发布web项目的三种方式 方式一: 配置tomcat 安装目录下的conf/server.xml <Host name="loaclhost">标签里面添加 ...

  7. Tomcat8内置jdk8运行环境发布web项目

    简单说明:之前部署项目都是没有改变之前的环境变量,最近由于公司的数据源换了,jdk由1.7改成了1.8,tomcat7也改为了1.8,现在需要部署采用新数据源的这个项目, 为了不改变之前的环境变量,使 ...

  8. 如何在Eclipse或者Myeclipse中使用tomcat(配置tomcat,发布web项目)?(图文详解)(很实用)

    前期博客 Eclipse里的Java EE视图在哪里?MyEclipse里的Java EE视图在哪里?MyEclipse里的MyEclipse Java Enterprise视图在哪里?(图文详解) ...

  9. Linux上部署web服务器并发布web项目-转

    Linux上部署web服务器并发布web项目   近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以 ...

随机推荐

  1. The initialize list of C++ Class

    性能问题之外,有些时场合初始化列表是不可或缺的,以下几种情况时必须使用初始化列表 常量成员,因为常量只能初始化不能赋值,所以必须放在初始化列表里面 Error1(constchar* constmsg ...

  2. linux 命令行更新sdk

    ./android list sdk --proxy-host android-mirror.bugly.qq.com --proxy-port 8080 --no-ui -a -s ./androi ...

  3. Apache Cloudstack Development 101 -- Data Access Layer

    刚接触CloudStack,也是第一次翻译英文文档,限于水平有限,不当之处欢迎拍砖! 原文地址:https://cwiki.apache.org/confluence/display/CloudSta ...

  4. 转:CRect类 的介绍

    类CRect是对Windows结构RECT的封装,凡是能用RECT结构的地方都可以用CRect代替. 结构RECT表示一个矩形的位置和尺寸,其定义为: typedef struct tagRECT{ ...

  5. PowerShell控制台输出符号+函数参数类型指定+文本内容读取

    There are several ways: Write-Host: Write directly to the console, not included in function/cmdlet o ...

  6. Bug解决过程复盘

    反思了下,解决问题无外乎3w1h when where who how 就是查询出来的事情多了,现在不知道哪个地方出问题,应该根据日志一步一步梳理,查看每一步的输出结果是否与预期一致 顺藤摸瓜 觉得不 ...

  7. HDU 5496 - BestCoder Round #58 - Beauty of Sequence

      题目链接 : http://bestcoder.hdu.edu.cn/contests/contest_chineseproblem.php?cid=637&pid=1002 思路 : 考 ...

  8. 创建多模块maven项目

    有两种方式: 1,new -->maven project-->maven-archetype-quickstart 建完多个独立的project后,手动修改pom文件的packing类型 ...

  9. chomp方法

    chomp方法属于String类里面的: "hello".chomp #=> "hello" "hello\n".chomp #=&g ...

  10. CentOS 设置mysql的远程访问

    好记性不如烂笔头,记录一下. 安装了MySQL默认是拒绝远程连接的. 首先进入数据库,使用系统数据库mysql. mysql -u root -p mysql #回车,然后输入则使用了系统数据库 接着 ...