文章目录
Web服务器
1.分类
- 管理静态内容的 -静态网页内容一旦设计好,就不能在运行过程中改变-
比如:常见的有apache,nginx (用的是80端口)(C语言编写的,nginx用的更为广泛) - 管理动态内容的 -可以根据用户的不同,展示不同的网页,或者内容是来自于数据库的-
比如:常见的有 tomcat,jetty(java编写的)(都是免费且开源的)
商业的有:weblogin,websphere,jboss
2.nginx
(1)目录结构
conf:配置文件目录
html:存放有自带的欢迎页面
nginx.exe:可执行程序
(2)启动nginx
start nginx
这里会出现一个黑窗口一闪而过(哭唧唧,今天早上折腾一早上,就是不知道它这是什么操作,还以为是我安装出了问题,其实用下面的语句检查一下就可以看它是否启动)
(3)检查nginx是否启动
tasklist /fi "imagename eq nginx.exe"
(4)访问Web浏览器
方式:打开浏览器,输入服务器地址+网页名称
本地:localhost或者127.1.1.1
http://ip地址//网页路径
默认的网页名一般是idex.html
(5)对nginx的常见命令
nginx -s reload //重新加载配置文件
nginx -s stop //强制停止
nginx -s quit //优雅的停止,完成当前任务再停止
3.tomcat(apache公司 用java语言编写的)
(1)目录结构
bin 可执行文件
conf 配置文件目录
webapps 应用程序目录
bin\startup.bat 启动脚本
bin\startup.sh linux下的启动脚本
bin\shutdown.bat 停止脚本
(2)停止方式
- 执行shutdown.bat
- 直接关闭黑窗口(属于强制停止)
- 选中黑窗口 按 ctrl+c
(3)配置tomcat:
<Connector port="端口号" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="utf-8"/>
URIEncoding=“解码字符集” -----配置解码字符集
port=“端口号” -------配置端口号
可以修改 conf/tomcat-users.xml 文件,定义tomcat 的管理员用户:
<role rolename="manager-gui"/> <!-- 角色标签 -->
<role rolename="admin-gui"/>
<!-- manager-gui 是管理应用的, amdin-gui 是管理虚拟主机的 -->
<user username="tomcat" password="tomcat" roles="manager-gui,admin-gui"/>
进入Manager App管理界面之后,可以进行:
start 开启app
stop 停止app
reload 重新加载app
undeploy 反部署app
(4)管理虚拟主机
查找 C:\Windows\System32\drivers\etc\hosts 文件,添加域名解析
DNS 域名映射
127.0.0.1 www.xiamuzi.com
然后通过Host Manager管理界面
添加name:虚拟主机的域名
添加appbase:服务器的页面存储的文件夹
此时会在相应的目录下生成对应的空文件夹,对应文件夹里可以添加ROOT(对应根目录应用程序)里面可以添加index.html
4.java开发web应用程序
目录结构
应用程序目录
|-WEB-INF
|-web.xml 部署描述符(配置文件)
|-classes 放置java编译好的class文件
|-lib 放置第三方的jar包(比如:mysql的驱动等)、
Servlet服务器端的程序
所有servlet需要继承HttpServlet父类
覆盖父类中的service(HttpServletRequest request,HttpServletResponse response){
}
之后在类上加一个注解:@WebServlet(urlPattern="/路径")
JSP(java server page)
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
5.maven
管理jar包时,会连接网络下载jar包
默认的仓库位置 C:\Users\Adminstrator.m2
maven的要素
groupId 组织编号 com.westos
artifactId 项目名称 web2
version 版本 1.0
目录结构
src
|-main
|-java (java代码)
|-resources (配置文件)
|-test
|-java
|-resources
pom.xml (可以添加 jar依赖,设置jdk版本,项目的字符编码)
表单提交的两种方式
1. get 请求
会把请求参数跟在地址之后,格式是
?参数名1=参数值1 & 参数名2=参数值2 ...
传递参数的长度有限
2. post 请求
请求参数会包含在请求体内,对外不可见
参数名1=参数值1 & 参数名2=参数值2 ...
没有长度限制, 注意 post 并不是真正安全(并没有对参数做加密处理)