Web后端开发入门(2)

Web后端开发入门(2)搭建JavaWeb应用开发环境–Tomcat服务器下载与安装首先,搜索Tomcat,找到如图网址点击,进入Tomcat官网在最左边一栏,有个Download,找到最新版Tomcat9,点击下拉,找到如上图所示位置,Core核心:zip版,tar.gz版(Linux系统),32位版,64位版,安装版。前几个版本都不需要安装,如果你需要安装就下载最后一个,然后选中自己要下载的版本,下载。安装…

大家好,又见面了,我是你们的朋友全栈君。

搭建JavaWeb应用开发环境–Tomcat服务器

下载与安装

    首先,搜索Tomcat,找到如图网址

Web后端开发入门(2)

    点击,进入Tomcat官网

Web后端开发入门(2)

    在最左边一栏,有个Download,找到最新版Tomcat 9 ,点击

Web后端开发入门(2)

    下拉,找到如上图所示位置,Core 核心:zip版,tar.gz版(Linux系统),32位版,64位版 ,安装版。前几个版本都不需要安装,如果你需要安装就下载最后一个,然后选中自己要下载的版本,下载。

    安装之后,找到bin目录下的startup.bat(startup.sh是Linux操作系统的)

Web后端开发入门(2)

    点击,进入如图所示页面,可能需要等一会。

Web后端开发入门(2)

    当出现最后一行代码时,即org.apache.catalina.startup.Catalina.start Server startup in 2113 ms时,表示Tomcat启动成功。之后,最小化,在浏览器导航栏输入localhost:8080

Web后端开发入门(2)

    出现如图所示页面,标明Tomcat已经启动成功并能正常运行。

    如果要停止,双击bin目录下的shutdown.bat文件即可。

如果服务器无法正常启动,原因一般来说有两个:

    1.JAVA_HOME环境变量设置问题

    要想双击bin目录下的startup.bat文件启动Tomcat服务器,首先要做的就是在Windows中设置JAVA_HOME环境变量,因为Tomcat服务器的启动需要用到这个JAVA_HOME环境变量,如果window中不存在JAVA_HOME环境变量,则Tomcat服务器是无法启动的。

    2.端口占用问题

    因为Tomcat服务器启动时是需要默认是使用8080端口的,如果这个8080端口被别的应用程序占用了,那么Tomcat服务器就无法正常启动,看到的现象就是Tomcat服务器启动界面会打印出异常错误信息,然后就自动关闭。如图所示

Web后端开发入门(2)

    由于这个窗口从启动到关闭的时间非常短,我们很难通过这个窗口看到Tomcat启动时的报错异常信息,因此我们一般只能通过Tomcat服务器的记录的log(日志)信息去查看Tomcat服务器的运行情况。

    在Tomcat服务器的根目录下有一个logs文件夹,打开文件夹,找到最新的一个文本文档,就能查看服务器的运行情况。

    8080端口被占用,只能去修改Tomcat的默认 端口。找到Tomcat下的conf->server.xml,找到如图所示

Web后端开发入门(2)

    8080就是Tomcat的默认端口号,直接修改就可以,改成1024以上的端口号,保存,重复前面步骤进行验证。

Tomcat的一些常用配置

Web后端开发入门(2)

    在这个页面中,右上角有个Host Manager,表示对主机上所部署的程序的管理、Manager APP对管理的一些配置,需要登录;Developer Quick Start下的Tomcat Setup是帮助文档、Example是示例代码、JDBC Data Sources是数据源

Manager APP配置

    Tomcat->conf->tomcat.xml

Web后端开发入门(2)

    打开后一直下拉到最后,添加代码,username用户名和password密码可以自己设置

<role rolename = "manager-gui"/>
<user username = "admin" password = "admin" roles = "manager-gui"/>

    添加代码后重启,再打开网页点击Manager APP,输入用户名和密码,即可登录到如下页面

Web后端开发入门(2)

将Tomcat配置到服务列表中,使之随系统的启动而启动

    1.添加服务

    使用cmd工具,并进入Tomcat根/bin目录–>执行 service install命令–>刷新Windows服务列表

Web后端开发入门(2)

    2.删除服务

    使用cmd工具,并进入Tomcat根/bin目录–>执行 service remove命令–>刷新Windows服务列表

配置Tomcat的虚拟目录

在Tomcat下的conf文件夹中,找到server.xml文件

<host>
<context docBase="项目文件的真实物理路径" path="访问路径">
</host>

Tomcat虚拟主机的配置

什么是虚拟主机?

一台物理机上搭建多个web站点,每个web站点独立运行,互不干扰,这些站点就是虚拟主机

基于主机名的虚拟主机配置

基于主机名的虚拟主机:多个域名解析到同一个IP地址,在WEB服务器里添加多个站点,每个站点设定一个主机名。HTTP协议请求里包含了主机名信息,当WEB服务器收到访问请求时,就可以根据不用的主机名来访问不同的网站。

步骤:

a、配置域名与IP的映射管理(对于本地局域网我们使用在host文件中添加;对于大型网络或者外网网络则需要配置DNS服务器中IP地址与域名的映射关系)

在C:\Windows\System32\drives\etc\hosts文件末尾添加:

127.0.0.1 www.lanqiao.org

127.0.0.1 www.taiyuan.org

b、配置serVer.xml

<Host name=”www.lanqiao.org” appBase=”E:”  unpackWARs=”true” autoDeploy=”true”>

<Context docBase=”e:\app1″ path=”” reloadable=”true” crossContext=”true”/>

<Value className=”org.apache.catalina.valves.AccessLogValve” directory=”logs” prefix=”localhost_access_log.” suffix=”.txt” pattern=”%h %l %u %t &quot;%rquot;%s %b”/>

</Host>

<Host name=”www.taiyuan.org” appBase=”E:\app”  unpackWARs=”true” autoDeploy=”true”>

<Context docBase=”e:\app\app2″ path=”” reloadable=”true” crossContext=”true”/>

<Value 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>

c、测试

基于端口的虚拟主机的配置

一个IP地址没通过不同的端口实现不同网站的访问

步骤:

在serVer.xml中,设置两个serVer组件

<Service name=”Catalina”>
    <Connector port=”8080″ protocol=”HTTP/1.1″ connectionTimeout=”20000″ redirectPort=”8443″ />
    <Connector port=”8009″ protocol=”AJP/1.3″ redirectPort=”8443″ />
    <Engine name=”Catalina” defaultHost=”localhost”>
      <Realm className=”org.apache.catalina.realm.LockOutRealm”>
        <Realm className=”org.apache.catalina.realm.UserDatabaseRealm” resourceName=”UserDatabase”/>
      </Realm>
        <Host name=”www.lanqiao.org”  appBase=”E:” unpackWARs=”true” autoDeploy=”true”>
<Context docBase=”e:\app2″ path=”” reloadable=”true” crossContext=”true”/>
            <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>
    </Engine>
  </Service>
  
  <Service name=”Catalina2″>
    <Connector port=”8888″ protocol=”HTTP/1.1″  connectionTimeout=”20000″ redirectPort=”8443″ />
    <Connector port=”8010″ protocol=”AJP/1.3″ redirectPort=”8443″ />
    <Engine name=”Catalina2″ defaultHost=”localhost”>
      <Realm className=”org.apache.catalina.realm.LockOutRealm”>
        <Realm className=”org.apache.catalina.realm.UserDatabaseRealm” resourceName=”UserDatabase”/>
      </Realm>
        <Host name=”www.taiyuan.org”  appBase=”E:” unpackWARs=”true” autoDeploy=”true”>
<Context docBase=”e:\app2″ path=”” reloadable=”true” crossContext=”true”/>
            <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>
    </Engine>

  </Service>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151091.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • APK签名机制原理详解

    APK签名机制原理详解众所周知,Android系统在安装Apk的过程中,会对Apk进行签名校验,校验通过后才能安装成功。那你知道签名校验的机制是什么?具体校验的是什么内容吗?申请第三方SDK(如微信支付)时填入的SAH1值是什么?目前众多的快速批量打包方案又是如何绕过签名检验的?我将通过一系列的文章来解开这些疑惑。

    2022年6月14日
    32
  • Python递归详解

    Python递归详解递归的依据在数学中,其实就是数学中的数学归纳法。一、数学归纳法什么是数学归纳法?最简单和常见的数学归纳法是证明当n等于任意一个自然数时某命题成立。证明分下面两步:证明当n=1时命题成立。假设n=m时命题成立,那么可以推导出在n=m+1时命题也成立。(m代表任意自然数)这种方法的原理在于:首先证明在某个起点值时命题成立,然后证明从一个值到下一个值的过程有效。当这两点都已经证明…

    2022年6月17日
    41
  • java 学生信息管理系统

    java 学生信息管理系统只设计了一部分全部的太多了。会慢慢更新增加。学生信息管理包括添加,删除,修改,查询,显示全部等具体结构如图在SQLServer2005数据库上实现数据操作。使用纯面向对象的java语言作为开发语言在sqlserver2005新建一个名为Student的数据库,在下面新建一个名为stu的表当然列名你可以随便写当然要有个学号啊。我的修改等等都是根据学号的

    2022年7月13日
    16
  • 微信公众号服务号开发_微信服务器token配置

    微信公众号服务号开发_微信服务器token配置搭建微信公众号开发+反向代理+服务器配置

    2022年8月21日
    10
  • C语言再学习 — 关键字volatile

    C语言再学习 — 关键字volatile占楼

    2022年7月27日
    7
  • 一文搞定7大流行后端框架:Spring、Netty、MyBatis、Hibernate、Dubbo…「建议收藏」

    一文搞定7大流行后端框架:Spring、Netty、MyBatis、Hibernate、Dubbo…「建议收藏」框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。可以说,一个框架是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,它为构件复用提供了上下文(Context)关系。因此构件库的大规模重用也需要框架。今天给大家分享49篇【后端编程框架】相关精选学习资…

    2022年5月1日
    60

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号