web服务器

apache web服务器

社会主义新天地 提交于 2020-01-22 05:46:42
一、安装 apache2.4.23 新版本的 httpd-2.4 新增以下特性; 新增模块; mod_proxy_fcgi(可提供 fcgi 代理) mod_ratelimit(限制用户带宽) mod_request(请求模块,对请求做过滤) mod_remoteip(匹配客户端的 IP 地址) 对于基于 IP 的访问控制做了修改,不再支持 allow,deny,order 机制,而是统一使用 require 进行 还新增以下几条新特性; 1、MPM 支持在运行时装载;不过要开启这种特性,在编译安装要启用这三种功能; --enable-mpms-shared=all --with-mpm=event 2、支持 event 3、支持异步读写 4、在每个模块及每个目录上指定日志级别 5、增强版的表达式分析器 6、每请求配置:, 7、毫秒级别的 keepalive timeout 8、基于 FQDN 的虚拟主机不再需要 NameVirtualHost 指令 9、支持使用自定义变量 安装环境:操作系统:Centos7.2,关闭 selinux 检查 httpd 包是否安装,如查安装则卸载 [root@www ~]# rpm -q httpd 1、安装 apache2.4.23 下载源码包: httpd-2.4.23.tar.gz apr-1.5.2.tar.gz apr-util-1.5

java web项目配置https访问

我只是一个虾纸丫 提交于 2020-01-22 01:16:20
转载地址:http://blog.csdn.net/keketrtr/article/details/52869173 转载: tomcat6配置: 1.单向认证,就是传输的数据加密过了,但是不会校验客户端的来源 2.双向认证,如果客户端浏览器没有导入客户端证书,是访问不了web系统的,找不到地址 如果只是加密,我感觉单向就行了。 如果想要用系统的人没有证书就访问不了系统的话,就采用双向 单向配置: 第一步:为服务器生成证书 使用keytool 为 Tomcat 生成证书,假定目标机器的域名是“ localhost ”, keystore 文件存放在“ C:\tomcat.keystore ”,口令为“ password ”,使用如下命令生成: keytool -genkey -v -alias tomcat -keyalg RSA -validity 3650 -keystore c:\tomcat.keystore -dname "CN=localhost,OU=cn,O=cn,L=cn,ST=cn,c=cn" -storepass password -keypass password 这个tomcat.cer是为了解决不信任时要导入的 keytool -export -alias tomcat -keystore c:\tomcat.keystore -file c:

配置支持Silverlight的Web服务器

本秂侑毒 提交于 2020-01-20 23:35:55
部署Silverlight到产品Web服务器是一个相当容易的过程,尽管有时候会有一些错觉——譬如,认为Silverlight需要部署在基于微软的Web服务器(IIS)上,事实上, Silverlight不强制一定部署在基于微软的Web服务器上,Apache也可以像IIS一样,轻松愉快的支持Silverlight运行。 但是还是要那么一点东东要指出来:Web服务器通常都只支持有限种已知扩展名的静态文件内容。看起来都很好,但是Silverlight引入了两个新的文件扩展(.xaml为松散XAML文件;.xap为基于zip压缩的二进制包格式文件),因此,你需要为web服务器添加MIME类型,这样才能让Web服务器识别并处理那些类型的文件。下面列出了你需要添加到Web服务器的MIME类型: Extension MIME Type .xaml application/xaml+xml .xap application/x-silverlight-app 这些就是你所有需要做的。但是具体到如何为不同的web服务器添加MIME类型,实际因web服务的不同而不同,下面列出了目前流行的一些web服务器和他们的链接,你可以从哪里找到如何配置和更多的信息: Apache ( 2.0 , 1.3 ) IIS ( 7 / 6.0 / 5.0 / 4.0 ) lighttpd Sun Java System

HTTP Keep-Alive模式

主宰稳场 提交于 2020-01-19 11:35:55
故事发生在10月份的一次面试经历中,本来我不想说出来丢人显眼,但是为了警醒自己和告诫后人,我决定写成博文发出来。因为在面试过程中,我讲在2009年写过QQ农场助手,在这期间深入学习了HTTP协议,而且在2010-05-18写了博文: HTTP协议及其POST与GET操作差异 & C#中如何使用POST、GET等 。面试官说既然我熟悉HTTP协议,就问“当HTTP采用keepalive模式,当客户端向服务器发生请求之后,客户端如何判断服务器的数据已经发生完成?” 说实话,当时我懵了,一直没有关注过keepalive模式。我只知道: HTTP协议中客户端发送一个小请求,服务器响应以所期望的信息(例如一个html文件或一副gif图像)。服务器通常在发送回所请求的数据之后就关闭连接。这样客户端读数据时会返回EOF(-1),就知道数据已经接收完全了。 我就这样被面试官判了死刑!!!说我完全停留在表面,没有深入(当时真的很受打击,一直自认为技术还不错!)。我当时真的很想找各种借口: 之前没有用到HTTP的keepalive模式,所以没有深入 好久没有用HTTP协议,细节忘了 实习的东西跟HTTP协议没有关系,用得少了就忘了 。。。。。。 觉得各种解释都是那么苍白无力!我再次感叹书到用时方恨少,也感叹一个人的时间是多么的有限(曾一度想成为一个IT专业全才),根本没有精力面面俱到

[原理] 说说Web请求的过程

家住魔仙堡 提交于 2020-01-19 01:41:39
在面试过程中,我们可能都遇到过这个问题,如果我们不是很理解整个过程,可能觉得就是客户端发送请求,服务端处理请求这个简单的过程。但是在工作中,我发现对这个问题理解的深度能让你更快且精确的定位到的问题的所在,最起码能知道是不是我们服务端的问题,接下来小生姑且根据目前自己的理解和参考资料对过程进行梳理。 文章目录 DNS解析域名 发起连接 三次握手 发送HTTP请求 路由转发和路由选择 Nginx反向代理 服务器处理请求 解析Http请求 跨域请求检测和处理 选择处理方法并响应 DNS解析域名 我们都知道Http/Https是基于TCP的应用层协议,他们其实对主机是不敏感的,但是其底层的TCP对主机是敏感的:TCP需要一个ip地址来唯一标识一个目的主机。我们在浏览器浏览时,通常都是输入www.xxx.com域名,我们需要的ip从何而来呢?这就要归功于DNS域名解析了。 DNS解析域名的原理其实就是建立了 <域名, ip> 的一个映射关系,这个映射关系可能保存在DNS服务器中,也可能在本地Hosts文件中。当你在浏览器输入www.baidu.com,主机会先对本地Hosts文件进行查询,如果存在映射,则直接使用Hosts文件中映射的ip地址;否则请求DNS服务器。一般后端都是使用nginx反向代理转发请求到集群,所以一般我们域名都是直接绑定nginx服务器,然后通过nginx管理集群列表。

Web服务器总结

只愿长相守 提交于 2020-01-18 00:02:02
文章目录 Web服务器 1、JavaWeb的概述 1.1 什么是JavaWeb? 1.2 JavaWeb编程是基于请求和响应 2、Web服务器概述 2.1 服务器简介 2.2 Web资源的分类 2.3 常用的Web服务器 3、软件架构 3.1 C/S架构:客户端/服务端 3.2 B/S架构:浏览器端/服务端(JavaEE属于B/S) 4、Tomcat服务器 4.1 Tomcat目录结构 4.2 部署Tomcat Web服务器 1、JavaWeb的概述 1.1 什么是JavaWeb? 使用java语言去编写所有浏览器可以访问到的程序的总称。叫 javaWeb 。 1.2 JavaWeb编程是基于请求和响应 (1)、什么是请求 客户端给服务器发送数据。叫 请求 。 (2)、什么是响应 服务器给客户端回传数据,叫 响应 。 (3)、请求和响应的关系 请求和响应是成对出现的! 2、Web服务器概述 2.1 服务器简介 指的是网络环境下为客户机(Client)提供某种服务的专用计算机,服务器安装有网络操作系统(如Windows 2000 Server、Linux、Unix等)和各种服务器应用系统软件(如Web服务器、电子邮件服务)的计算机 注:服务器的主要功能是提供网上信息浏览服务 2.2 Web资源的分类 所谓web资源即放在Internet网上供外界访问的文件或程序

HTTP和HTTPS协议的区别

无人久伴 提交于 2020-01-17 07:38:46
HTTP与HTTPS的区别   超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。   为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。 一、HTTP和HTTPS的基本概念   HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。   HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。   HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。 二、HTTP与HTTPS有什么区别?   HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全

构建apache web 服务器

社会主义新天地 提交于 2020-01-17 01:45:21
一、Apache服务器工作模式 1、Prefork模式:Prefork MPM使用多个子进程,每个子进程只有一个线程,每个进程在某个确定的时间只能维护一个连接 2、Worker模式: Worker MPM使用多个子进程,每个子进程又有多个线程,每个线程在某个确定的时间只能维护一个连接,一般在高流量的HTTP服务上,Worker 是 个比较好的选择,因为Worker 内存使用比PreFork要低的多。 二、安装Apache 1、新建soft目录:mkdir soft 2、下载Apache安装包:执行命令cd soft/ ,执行命令 wget http://www.apache.org/dist/httpd/httpd-2.2.27.tar.gz 3、下载好后,在安装之前先安装 apr apr-util ,使用yum安装,执行命令 yum install apr apr-util ,再安装dev ,执行命令 yum install apr-devel apr-util-devel -y 4、查看soft目录如下图所示,执行解压命令 tar xzf httpd-2.2.27.tar.gz,执行完毕再进入解压文件 ,执行命令:cd httpd-2.2.27 ,查看目录详情 ls 执行命令 ./configure --prefix=/usr/local/apache2,接着执行完毕

HTTP Keep-Alive模式

送分小仙女□ 提交于 2020-01-16 19:57:49
——献给那些向我这样对HTTP的“伪”熟悉者。 故事发生在10月份的一次面试经历中,本来我不想说出来丢人显眼,但是为了警醒自己和告诫后人,我决定写成博文发出来。因为在面试过程中,我讲在2009年写过QQ农场助手,在这期间深入学习了HTTP协议,而且在2010-05-18写了博文: HTTP协议及其POST与GET操作差异 & C#中如何使用POST、GET等 。面试官说既然我熟悉HTTP协议,就问“当HTTP采用keepalive模式,当客户端向服务器发生请求之后,客户端如何判断服务器的数据已经发生完成?” 说实话,当时我懵了,一直没有关注过keepalive模式。我只知道: HTTP协议中客户端发送一个小请求,服务器响应以所期望的信息(例如一个html文件或一副gif图像)。服务器通常在发送回所请求的数据之后就关闭连接。这样客户端读数据时会返回EOF(-1),就知道数据已经接收完全了。 我就这样被面试官判了死刑!!!说我完全停留在表面,没有深入(当时真的很受打击,一直自认为技术还不错!)。我当时真的很想找各种借口: 之前没有用到HTTP的keepalive模式,所以没有深入 好久没有用HTTP协议,细节忘了 实习的东西跟HTTP协议没有关系,用得少了就忘了 。。。。。。 觉得各种解释都是那么苍白无力!我再次感叹书到用时方恨少,也感叹一个人的时间是多么的有限

HTTP请求模型

馋奶兔 提交于 2020-01-16 06:22:31
转自: http://blog.csdn.net/xiaojianpitt/article/details/4389247 HTTP 请求模型 一、连接至Web服务器 一个客户端应用(如Web浏览器)打开到Web服务器的HTTP端口的一个套接字(缺省为80)。 例如: http://www.myweb.com:8080/index.html 在Java中,这将等同于代码: Soceet socket=new Socket("www.myweb.com",8080); InputStream in=socket.getInputStream(); OutputStream out=socket.getOutputStream(); 二、发送HTTP请求 通过连接,客户端写一个ASCII文本请求行,后跟0或多个HTTP头标,一个空行和实现请求的任意数据。 一个请求由四个部分组成:请求行、请求头标、空行和请求数据 1.请求行:请求行由三个标记组成:请求方法、请求URI和HTTP版本,它们用空格分隔。 例如:GET /index.html HTTP/1.1 HTTP规范定义了8种可能的请求方法: GET 检索URI中标识资源的一个简单请求 HEAD 与GET方法相同,服务器只返回状态行和头标,并不返回请求文档 POST 服务器接受被写入客户端输出流中的数据的请求 PUT