服务器-一个web项目,如何提供给外网使用?

问题描述

一个web项目,如何提供给外网使用?

如题:我用spring+mybatis+mysql写了一个web的项目,如何提供给外网使用,
已经申请好域名和空间。
只是不知道步骤,
1.怎么将自己的web项目发布到外网?
2.数据库怎么连接?
3.如何启动服务器?

PS:小白一个,有太多不明白的地方,还请大神概括下基本的步骤。

解决方案

最好是再租用一个云服务器。用自己的PC作为服务器有如下问题:
(1)天朝和谐了80端口,所以必须换端口,地址上拖上一个端口号,而且搜索引擎也不待见
(2)家庭宽带上行带宽有限,所以架设的网站流量稍大就会很卡。
(3)家庭宽带没有固定的公网ip,所以需要不断的换ip,改 dns 解析,虽然有花生壳那样的动态解析,但是无法保证稳定性
(4)不经济,一天24小时开着,花费电费、网费、占用场地、自己维护还有硬件本身,这样算下来花费比云服务器贵得多。

解决方案二:

这主要看你已经申请的空间提供的是什么服务了?
如果只是提供静态文件服务那是不够的,这种只能部署包含静态HTML页面的Web站点;
如果你申请的是Java Web容器,那么你只需要将你的Java站点提交上去就可以,服务提供上应该会提供服务器启停的方法。像这种提供容器的PaaS服务一般也会提供数据库服务(可能是单收费的),有些服务商会提供通用客户端的连接方式,有些可能只提供专用客户端或Web界面连接和查询数据库。但是有一点是肯定的,同一个PaaS运营商提供的容器肯定可以访问其提供的数据库服务。代码中可在mybatis中配置数据库连接;
如果你申请的空间是虚拟操作系统,那么你需要在上面安装Java Web服务,如Tomcat、Jetty、Jboos等,还需要安装数据库。如果是个人玩的话,建议使用轻量级的Tomcat和免费的MySQL。还要注意的一点就是一定要把防火墙的相关端口打开,不然服务启动了也不能通过互联网访问。

下面回答你的几个问题:
1. 服务商提供的空间不论是上面提到的哪种,一般都是外网的,也就是互联网可访问的;
2. 数据库连接要看服务商提供的是上面说的哪种服务了,数据库可用MySQL的客户端连接,也可通过JDBC连接;
3. 服务商提供的如果是PaaS服务,他同样会提供启停方法;如果是IaaS服务,你需要登录到系统中去自己启动,这个你可参考下Windows或Linux下Tomcat/Jboos/Jetty和MySQL的启动命令。

解决方案三:

空间+域名+数据库 这些都要有,不过你租了空间,应该人家就给你了数据库、你自己问问他们客服

解决方案四:

说个简单的例子,我们的web项目在我们自己机子上运行起来后,我们通过在浏览器中输入127.0.0.1:8080/项目名称来访问,也可以通过本机ip:8080/项目名称来访问。
同一个局域网下别的机器可以输入我的本机ip:8080/项目名来访问我的web项目。
现在知道了我的电脑是内网可以访问到的,所以其它同在内网下的机器可以通过这样的方式来访问我的web项目。
那么,如果假设我的电脑可以被外网的电脑访问,他们就能访问到我的web项目,所以现在的主要问题是如何让运行我的web项目的服务器被外网访问到。
外网想访问内网的服务器,外网是通过路由器上网的。
做端口映射,直接登录到路由器就可以设置,具体操作,找一下买路由器时包装盒中的说明书。
一般像tp-link路由器,直接http://192.168.1.1,输用户名密码admin/admin登上去,到转发规则里添加端口映射就行了,规则就是,内网服务器地址:服务器需要映射的端口 --> 外网地址:外网端口。
我们常常租用的网络服务器,本身人家就是设置好联网的,我们只需要把编译后的web项目放到服务器指定的目录下,就可以通过域名直接访问到租用的网络服务器上运行的web项目。服务器上回给我们提供好web项目运行环境,就像我们的tomcat服务器,我们的项目一般是放在tomcat安装目录的webapps目录下。

时间: 2025-01-01 07:21:33

服务器-一个web项目,如何提供给外网使用?的相关文章

面试-一个web项目并发问题。

问题描述 一个web项目并发问题. 有一次面试被问到一个并发问题: 如果两个人同时竞价,在几乎同时点击竞价按钮的时候,这个web应用程序是如何做出判断到底谁先做出竞价的? 解决方案 我简述一下我的个人观点: 两个人同时点击竞价按钮,向WEB发送请求时: 首先,网络情况是不一样的,谁的请求先发送到服务器,自然服务器认为谁先做出竞价. 其次,假设请求又刚好同时到达服务器,那么自然是谁先拿到Lock就是谁先做出竞价. 有可能同时拿到Lock吗? 对于单CPU来说,没有可能,通过操作系统原理我们得知:

eclipes创建一个web项目web.xml不能自动更新的原因(web.xml和@WebServlet的作用)

在eclipse中创建一个Web项目的时候,虽然有web.xml生成,但是再添加Servlet类文件的时候总是看不见web.xml的更新,所以异常的郁闷!上网查了查,原来我们在创建Web项目的时候,会弹出一个对话框,"Dynamic web module version"这个选项默认成了3.0,按照老规范,应该是在eclipse的WebContent \ WEB-INF \ 目录下创建web.xml的.而新规范是可以不用web.xml的,如tomcat 7.0就支持新规范,这样相关的s

hibernate-Maven test一个Web项目,报错,弄了一天没弄好,求高手解答

问题描述 Maven test一个Web项目,报错,弄了一天没弄好,求高手解答 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'defaultServletHandlerMapping' defined in class path resource [org/springframework/web/servlet/config/annotation/Delegating

xml-怎样搭建一个web项目那些框架怎么配置

问题描述 怎样搭建一个web项目那些框架怎么配置 怎样搭建一个web项目那些框架怎么配置,xml怎么配置,怎么知道那个框架怎么写配置,求大神详细解答 解决方案 你可以使用三大框架,一般网上都有这样的范例的. 解决方案二: 需要看你用什么框架,现在框架太多了,不过不同的框架都有一些帮助文档告诉你如何配置 解决方案三: 要看你用什么框架了,给你一个SSH框架的搭建步骤吧http://blog.csdn.net/yeohcooller/article/details/9316923

在传智播客下了一个web项目,但是报错,请各位大神指教(初学java)

问题描述 在传智播客下了一个web项目,但是报错,请各位大神指教(初学java) log4j:WARN No appenders could be found for logger (com.mchange.v2.log.MLog). log4j:WARN Please initialize the log4j system properly. 2015-9-23 14:16:25 org.apache.catalina.core.StandardWrapperValve invoke 严重:

spring mvc-我用springMVC写了一个web项目,加载到tomcat8上后启动出现此异常,请懂得的来帮忙看下

问题描述 我用springMVC写了一个web项目,加载到tomcat8上后启动出现此异常,请懂得的来帮忙看下 异常信息如下: 严重: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/spring_mvc]] at or

代码- B/S架构的一个web项目,在VS2010中用C#语言编写

问题描述 B/S架构的一个web项目,在VS2010中用C#语言编写 B/S架构的一个web项目,在VS2010中用C#语言编写 编写代码:从前台页面中读取exl表中的数据,以及在后台页面将数据写入exl表中 解决方案 可以使用NPOI这个库,参考:http://blog.csdn.net/jyz123456/article/details/7966844 解决方案二: C#操作EXCEL,一般都是用NPOI这个类库来实现

tomcat-启动一个WEB项目出错,但是就是找不到原因

问题描述 启动一个WEB项目出错,但是就是找不到原因 严重: StandardWrapper.Throwable java.lang.NoClassDefFoundError: Lcom/zlh/common/api/RedirectApi; at java.lang.Class.getDeclaredFields0(Native Method) at java.lang.Class.privateGetDeclaredFields(Unknown Source) at java.lang.Cl

java架构师-成为一个web项目高手,需要什么知识点

问题描述 成为一个web项目高手,需要什么知识点 知识点越详细越好,比如定时任务spring task,缓存ehcache,求工作三五年内高级工程师指点 解决方案 首先要了解web的底层技术Servlet的原理及使用,然后就是还基础上的各种框架技术SSH,Spring MVC等框架的使用,进阶知识的话有必要了解下servelet容器的原理.总的来说熟能生巧,经历的项目多了,技术知识自然能得到积累. 解决方案二: Web架构师成长之路 Bing:web项目高手 架构师 要求