如何在自己的Windows系统上 架设服务器并开发网站,然后连入外网供外界访问?(JDK+Tomcat+花生壳)
<目前百度谷歌上都木有我这么完整的笔记,虽然各个部分都是来自百度的,然后自己实践,自己做截图笔记,嘻嘻 Made By HeYang>
环境:Windows 7
工具:JDK,Apache tomcat,花生壳 客户端
网站建设技术:JSP
<建议:之后需要用的JSP的开发工具Eclipse都不要建立在中文路径下>
1、首先下载然后安装JDK,安装JDK的方法,包括配置环境变量,百度搜索就会有,这是学习Java的基础,以及简单利用终端测试安装是否成功,此处就不多累述。
2、下载然后安装Apache tomcat服务器,下载网址是:http://tomcat.apache.org/,随便哪个版本的tomcat都可以,一般最好是最新版本的。然后直接解压这个服务器就安装好了。
个人喜好放在JDK安装的目录同一目录下面,如果之后使用了Eclipse For JavaEE(不是普通的Eclipse哦,是专门用来开发JavaWeb的Eclipse)这个IDE的话,最好是不能随便移动这些文件的,包括JDK的目录,因为Eclipse是会默认配置这些文件的所在路径的,或者在安装这个IDE是要首次配置这个文件所在固定好的目录的:

接下来测试apache-tomcat是否有用,如果没有用,往往很可能是JDK环境变量配置错误。
进入apache-tomcat-8.0.24\bin文件夹下,其中双击startup.bat就能启动apache-tomcat服务器,同样双击 shutdown.bat就能关闭apache-tomcat服务器。

一般启动成功的状态是这样的,不是这样的往往就是前面JDK环境变量配置错误,请重新配置,这个基于JDK运行的窗口是不能直接关闭的,如果直接关闭,同时也就关闭了服务器,或者说要想方便的关闭服务器,直接关闭这个窗口也是可以的:

然后本地测试这个服务器,只要在本地浏览器输入:http://localhost:8080 显示下面网页就说明 tomcat服务器架设完毕:

3、建立简单的网页,在apache-tomcat-8.0.24\webapps文件夹下添加文件夹HeYang(文件夹名字随便取),然后在apache-tomcat-8.0.24\webapps\HeYang这个文件夹下面添加记事本和一个测试用的图片1.jpg(随便你什么图片,便于测试名字改为1.jpg),记事本的内容为下面的jsp代码,然后记事本文件名包括后缀全部要改为index.jsp,然后本地访问测试一下:
<%@ page language="java" contentType="textml; charset=UTF-8"
pageEncoding="UTF-8"
errorPage="two.jsp"%> <%@ page import="java.util.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html>
<head>
<meta http-equiv="Content-Type" content="textml; charset=UTF-8">
<title>登入界面</title>
</head>
<body>
<h1>Hello world! My Name is 何杨!</h1>
<br>
<h2>很抱歉,目前网站里只放了这么简单的内容,只是做做测试用的,以后会展示精彩的东西给大家看。</h2>
<%
out.print("<br/>");
String name = request.getParameter("userName");
String pass = request.getParameter("passWord");
out.print(name);
out.print("<br/>");
out.print(pass);
out.print("<br/>"); %>
<hr>
<h1>九九乘法表</h1>
<hr>
<%!
String print1()
{
String s = "";
for(int i = 1;i<=9;i++){
for(int j = 1;j<=i;j++)
{
s+=i+"*"+j+"="+i*j+" ";
}
s+="<br>";
}
return s;
}
//JSP内置out对象,使用脚本方式调用,打印九九乘法表,还要抛出异常
void print2(JspWriter out) throws Exception
{
String s = "";
for(int i = 1;i<=9;i++){
for(int j = 1;j<=i;j++)
{
s=i+"*"+j+"="+i*j+" ";
out.print(s);
}
out.print("<br/>");
}
}
%>
<%=print1() %>
<br>
<img src="1.jpg">
<br>
<% print2(out); %>
</body>
<ml>
index.jsp
这个算是最最简单的jsp网站了,只有一个jsp网页数据,然后带一个用于显示的图片资源1.jpg,然后在本地浏览器输入地址:http://localhost:8080/HeYang/index.jsp(服务器打开了,这个网址才有用),就会出现下面:

到这里,tomcat轻量级服务器和JSP网站环境架设完毕,这些足以够继续学习JavaWeb用的了,另外可以搭配Eclipse For JavaEE集成开发环境来深入学习Javaweb。
4、连入外网,让大家都能够访问刚刚建设的服务器里的网站网页数据,甚至手机客户端在任意地点也能够访问。
接下来个人啰嗦一下计算机网络的基本常识,这个我自己理解的常识,可能不正确还望高手指教:内网和外网,通常在内网中不同的计算机进行通信一般情况下简单的说来算是局域网,只要在局域网通过需要访问的计算机的本地IP地址就能访问这个计算机,如果是从外网,比如说,要通过手机客户端(手机联网的方式就可能是wifi也可能是4G网络)来访问计算机,就需要知道这个计算机的网络外网IP地址,就比如我现在的电脑联网的方式是室内wifi路由器,这个路由器是链接到外网IP地址的,同时这个外网IP地址还要映射到我这个计算机本地IP地址,然后将申请的域名网址指向这个映射好我这台笔记本的IP地址的外网的IP地址(域名网址好比:http://www.baidu.com,而我的域名网站是:http://heyang234.imwork.net ),由于网络环境的复杂,外网的IP地址常常是多变的。每一次链接都需要重新获取外网的IP地址,就特别的麻烦,所以就需要动态域名。
这里需要用第三方工具:花生壳,网址是:http://www.oray.com/ 需要注册,申请获取免费的域名,然后下载 花生壳 客户端(花生壳官网提供了内网版和外网版,我用的是内网版提供了内网和外网服务的,外网版没试用所以不是很清楚使用细节),目前只提供Windows和Linux版本的,没有Mac版本的,真可惜,我架设不来Mac可以被外网访问的服务器。
我这里就用Windows的花生壳客户端了,通过前面注册的账号和密码就能登入这个客户端。

然后是打开映射功能,这个功能可能会提示你申请开通,会需要支付一元服务费,支付开通后,就是永久免费使用的。

映射需要经过多次,可能一开始几次是会失败的。

接下来要把tomcat配置文件稍微修改一下,就能使得外网通过这个申请的域名访问我的JSP网址,打开apache-tomcat-8.0.24\conf\server.xml(用记事本打开也可以,但是我用的是Sublime Text编辑器,视觉上比单调的记事本好看多了),然后找到Connector port="8080",改为下面图片改后的80,还有就是比较新版本的可能没有这行配置代码:
<Context path="" docBase="HeYang" reloadable="true" />,
将这段代码复制到里面去就可以了,但是注意docBase="HeYang",就会使得域名地址访问的是HeYang文件目录下的网站,所以自己设定网站目录同时也要自己设定这个docBase="HeYang",最后保存即可:

然后测试一下,用你的手机输入网址或者让离你很远的朋友通过手机或者电脑打开这个网址链接:http://heyang234.imwork.net/HeYang。如果出现上面的网页,就说明你的服务器外网建立连接成功。
1、为了下来的工作中不出现什么问题,我并没有将8080端口改成80,据说80端口被电信封掉了,我让用电信上网的同学访问我的网站,果然不行,这里我们明白道理就可以了,只是学习测试之用,所以我们就用8080端口。
如何在自己的Windows系统上 架设服务器并开发网站,然后连入外网供外界访问?(JDK+Tomcat+花生壳)的更多相关文章
- php项目,别人无法访问自己(windows 系统)上Apache服务器原因(转载)
别人无法访问自己电脑上的Apache服务器,其中最大的原因是因为Windows防火墙的因素. 1.有安装防火墙的,把防火墙关闭 2.windows默认带防火墙的,进入 控制面板-系统和安全-Windo ...
- windows系统上安装与使用Android NDK r5 (转)
windows系统上安装与使用Android NDK r5 很早就听说了android的NDK应用,只是一直没有时间去研究,今天花了点时间在windows平台搭建了NDK环境,并成功运行了第一个简单 ...
- spm完成dmp在windows系统上导入详细过程
--查询dmp字符集 cat spmprd_20151030.dmp ','xxxx')) from dual; spm完成dmp在windows系统上导入详细过程 create tablespace ...
- 快速获取Windows系统上的国家和地区信息
Windows系统上包含了200多个国家和地区的数据,有时候编程需要这些资料.以下代码可以帮助你快速获取这些信息.将Console语句注释掉,可以更快的完成分析. static void Main(s ...
- Windows系统上如何使用SSH
Windows系统上如何使用SSH 传统的网络服务程序如FTP.Telnet等,在网络上一般使用明文传送数据.用户账号和口令信息,容易受到中间人的攻击.用户利用SSH协议后能有效防止DNS及IP欺骗, ...
- 如何在Windows系统上用抓包软件Wireshark截获iPhone等网络通讯数据
http://www.jb51.net/os/windows/189090.html 今天给大家介绍一种如何在Windows操作系统上使用著名的抓包工具软件Wireshark来截获iPhone.iPa ...
- Redis进阶实践之三如何在Windows系统上安装安装Redis
一.Redis的简介 Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合 ...
- 非Unicode编码的软件如何在Windows系统上运行
我们常常会遇到这样一种情况:点开某些日文软件(我不会说就是galgame( ╯□╰ ))会出现乱码或者直接无法运行. 出现乱码的原因很简单:编码与译码的方式不一致!!!!!!!!!!! 首先大家需要知 ...
- 在windows系统上使用pip命令安装python的第三方库
在windows系统上使用pip命令安装python的第三方库 通过cmd启动命令行后,直接输入pip命令,有时候命令行会提示我们pip不是一个指令,这个时候我们可以通过python的集成开发环境里面 ...
随机推荐
- AVL树(二)之 C++的实现
概要 上一章通过C语言实现了AVL树,本章将介绍AVL树的C++版本,算法与C语言版本的一样. 目录 1. AVL树的介绍2. AVL树的C++实现3. AVL树的C++测试程序 转载请注明出处:ht ...
- 缓存池扩展 (Buffer Pool Extension)实践
SQL Server 2014缓存池扩展 (Buffer Pool Extension)功能可以将缓存池扩展到较快的SSD存储上.为内存比较紧张的系统提供了新的扩展途径. Buffer Pool 扩展 ...
- Spring基础——小的知识点
一.整合多个配置文件 在 Spring Config 文件中,可以使用 <import> 标签将别的配置文件引入到一个文件中,进行配置文件的集成.该标签和 <bean> 标签同 ...
- 备份和还原SQL Server及压缩Access数据库
功能说明:备份和恢复SQL Server数据库 * 作者: 刘功勋; * 版本:V0.1(C#2.0);时间:2007-1-1 * 当使用SQL Server时,请引用 COM组件中的,SQLDMO. ...
- MVC5+EF6 入门完整教程12--灵活控制Action权限
大家久等了. 本篇专题主要讲述MVC中的权限方案. 权限控制是每个系统都必须解决的问题,也是园子里讨论最多的专题之一. 前面的系列文章中我们用到了 SysUser, SysRole, SysUserR ...
- BI之SSAS完整实战教程1 -- 开篇, BI简介 & SSAS简介
文章提纲 商业智能(BI, Business Intelligence)基本概念 SSAS(SQL Server Analysis Services)相关工具(开发.管理和客户端) 总结 一.商业智能 ...
- 【JS复习笔记】00 序
作为一个前端苦手,说是复习,你就当我是重学好了. 好吧,我当然不可能抱着一个砖头去复习,所以捡了本薄的来读——<JavaScript语言精粹>. 当初带我的人说这本书挺好,就看这本书好了. ...
- .NET向APNS苹果消息推送通知
一.Apns简介: Apns是苹果推送通知服务. 二.原理: APNs会对用户进行物理连接认证,和设备令牌认证(简言之就是苹果的服务器检查设备里的证书以确定其为苹果设备):然后,将服务器的信息接收并且 ...
- mongodb安装与使用
一.在linux服务器中安装mongodb 1.首先你要有一台安装有linux系统的主机 2.从mongoDB官网下载安装包:http://www.mongodb.org/downloads 3.将下 ...
- 开源VS扩展CodeMaid介绍
CodeMaid是一个开源的Visual Studio的扩展插件,用于整理与优化代码等.功能类似于商业软件ReSharper,但它是免费的,并且开放源代码.它能帮助你更容易的理解你的代码,支 ...