php做定向简单。 你试下这个操作,应该可以的: 操作方法: 第一步、建立tiaozhuan.asp文件。使用记事本或Dreamweaver建立名称为tiaozhuan.asp的网页文件,并清除里面的所有内容输入一下内容: ************************不包含此行************************************ <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <% Response.Status="301 Moved Permanently" Response.AddHeader "Location","https://www.doczj.com/doc/191936516.html,/index.html" Response.End %> ************************不包含此行************************************ 注意:http://后面的网址请更改为你网站的网址,首页文件名请更改为你现在使用的网站首页的文件名。保存tiaozhuan.asp文件并退出。 第二步、设置默认首页。进入空间管理面板,不同的空间会有不同的操作方法,但都是大同小异,我们要在设置在里面找到设置默认首页的功能。在默认首页文件名列表的最前面输入tiaozhuan.asp然后确定即可。 第三步、文件上传。将刚刚建立的tiaozhuan.asp文件用FTP上传到你的空间中。 第四步、打开首页查看是否成功。 有一个细节不知道大家有没有注意到,就是我没有通过在首页文件中直接添加上面的代码,而是采用重新建立文件的方法来实现301重定向的功能。当然,有的朋友也许是动态网站或真正的首页文件不是这个名称,大家可以按照网站本身的条件进行更改。另外,经过笔者测试,如果将上面的代码加入到ASP首页文件中有时会造成错误的现象,那就是“死循环”。因为上面的代码如果加入到ASP首页文件的最顶端就会造成打开网站先访问首页文件然后执行首页文件最顶端的代码进行跳转到自身,然后再次执行“先访问首页文件然后执行首页文件最顶端的代码进行跳转到自身”所以就会出现浏览器忙乱的现象,无法打开网页。如果将大门放入到ASP首页文件的最顶端,也会出现类似上面的现象,所以我们选择重新建立文件进行301重定向。 在这个实战中,我没有将301重定向到网站的根目录,而是直接定向到网站的index.html文件,大家也许会感到我的操作方法和别人的描述不太一样。因为这样做可以将所有的权重指向index.html页面,会使网站的首页排名又一定程度的权重提升,避免了权重的分散。再有一点原因就是刚才提到的“死循环”了。 综上,请按照第一至第四步进行操作,即可完美的完成网站定向,海纳百川,权重统一。大家可以触类旁通、自行思考,如果有N个域名指向同一个网站,那么是不是也可以通过这个方法来集中权重,避免权重不必要的流失呢?
servlet请求转发的三种方式 servlet中的请求转发主要有三种方式: 1、 forward:是指转发,将当前request和response对象保存,交给指定的url 处理。并没有表示页面的跳转,所以地址栏的地址不会发生改变。 2、 redirect:是指重定向,包含两次浏览器请求,浏览器根据url请求一个新的页面,所有的业务处理都转到下一个页面,地址栏的地址会变发生改变。 3、 include:意为包含,即包含url中的内容,进一步理解为,将url中的内容包含进当前的servlet当中来,并用当前servlet的request和respose来执行url中的内容处理业务.所以不会发生页面的跳转,地址栏地址不会发生改变。 测试如下: 首先编写三个html界面:分别是登录界面:login.html;登录成功界面:success.html;登录失败界面:fail.html. 之后,处理登录逻辑的servlet类如下: Java代码
运行后如果输入正确的用户名密码,则执行include方法,界面显示:include 包含。登录成功!并且地址栏地址未改变,若是输入错误登录名或者密码,界面显示:登录失败!并且地址栏地址改变。其中要注意的是sendRedirect方法中在要跳转的页面url前必须加上当前web程序路径名,这个路径通过request.getContextPath()可以得到。 如果吧其中include方法改为forward方法: Java代码 登录时输入正确信息,则跳转的页面地址不变,显示:登录成功!不包含url中的内容。 总结如下: redirect与include、forward的区别在于是不是同一个Request,redirect会有两次交互。 include与forward的区别在于输出的内容,include包含本身servlet与跳转页面内容的结果,而forward不包含本身servlet的内容。
LinuxApacheWeb服务器配置教程 Linux阿帕奇网络服务器配置教程 阿帕奇的主要特点 根据著名的万维网服务器研究公司进行的一项调查,全世界50%以上的万维网服务器使用阿帕奇,排名世界第一。 阿帕奇的出生非常戏剧化。当NCSA万维网服务器项目停止时,那些使用NCSA万维网服务器的人开始用他们的补丁来交换服务器,他们很快意识到有必要建立一个论坛来管理这些补丁。就这样,阿帕奇集团诞生了,后来这个集团在NCSA的基础上建立了阿帕奇。 阿帕奇的主要特点是: 。可以在所有计算机平台上运行; 。支持最新的HTTP 1.1协议; 简单而强大的基于文件的配置; 。支持通用网关接口CGI 。支持虚拟主机; 。支持HTTP认证; 。集成的Perl脚本编程语言; 。集成代理服务器; 。拥有可定制的服务器日志;。支持服务器端包含命令。支持安全套接字层。用户会话过程的跟踪能力;支持FastCGI。支持Java小服务程序。 安装Apache流程
安装Apache 接下来,我们将开始征服阿帕奇的漫长旅程。我们将一步一步地学习使用Apache,从介绍到掌握,通过需求的一步一步的例子。 系统需求 运行Apache不需要太多的计算资源。它运行良好的Linux系统有6-10MB的硬盘空间和8 MB的内存。然而,单独运行Apache可能不是您想要做的。更有可能的是,您希望运行Apache来提供WWW服务,启动CGI流程,并充分利用WWW所能提供的所有惊人功能。在这种情况下,您需要提供额外的磁盘空间和内存空间来反映负载要求。换句话说,它不需要太多的系统资源来启动WWW服务,但是它需要更多的系统资源来为大量的客户提供服务。获取软件 你可以呆在 错误日志命令用于指定错误日志文件名和路径。 命令格式:错误日志[日志文件名] 示例:错误日志/var/ srm.conf Srm.conf是一个资源配置文件,它告诉服务器您想在WWW站点上提供什么资源,在哪里以及如何提供这些资源。 DocumentRoot命令指定主文档的地址。 命令格式:文档根[路径] 示例:文档根目录/主页/ UserDir命令,用于指定个人主页的位置。如果你有一个用户测试,
转发与重定向的区别 我们知道,请求转发和请求包含都是在一个请求内,涉及到多个Servlet 。既然转发和包含都在一个请求内,那么说明多个Servlet 共用同一个request 对象和response 对象。这个时候就存在request 域。 1. request 域 Servlet 的三大域对象:request ,session ,application 。其中request 域是三大域对象中范围最小的域对象,application 对象其实就是ServletContext 对象,在ServletContext 功能详解中我们对它的域功能做了详细的介绍;session 域会在后面学习。 request 域只会在请求转发和请求包含时存在。它的域范围就是整个请求链,如图1-1所示。例如:由AServlet 请求转发到BServlet ,这时在AServlet 中向request 域中存放数据,然后在BServlet 中从request 域中获取数据。如果BServlet 又转发给其他的Servlet ,那么在其他Servlet 中也可以从request 域中获取数据。转发过程中经过的这些Servlet 都在一个请求链中。 客户端AServlet BServlet CServlet 请求AServlet 转发转发 响应 请求链 图1-1 请求转发 2. request 域相关方法介绍 以后只要是域对象,那么它必然会有以下三个方法: ● void setAttribute(String name,Object value) 该方法是向域中保存域属性,例如:setAttribute(“username ”,”zhangsan ”),其中,username 是域属性的名称,zhangsan 是域属性的值。如果多次调用该方法,且属性名称相同,那么后保存的数据会覆盖先保存的数据。 ● Object getAttribute(String name) 该方法是根据属性名称从域中获取域属性的值,如果之前没有调用setAttribute()方法保存数据,那么调用getAttribute()方法返回值是null 。 ● void removeAttribute(String name) 该方法是从域中移出指定名称的域属性,如果该名字的域属性不存在,则该方法什么都不
在Linux下配置Apache服务器 一、实验目的 完成本次实训,将能够: ●配置基本的Apache服务器 ●配置个人用户Web站点。 ●配置虚拟目录别名功能。 ●配置主机访问控制。 ●配置用户身份验证功能.。 ●配置基于IP地址的虚拟主机. 二、实验环境 1、RedHat Linux4AS. 2、Apache 2.0 三、实验内容 1.配置基本的Apache服务器 2.配置个人用户Web站点。 3.配置虚拟目录别名功能。 4.配置主机访问控制。 5.配置用户身份验证功能.。 6.配置基于IP地址的虚拟主机。 四、实验要求 在Linux操作系统下配置Apache服务器。 五、注意事项 1.在修配置文件下注意区分大小写、空格。 2.在每次重新开机后都必须启动Apachec服务器。 3.在每次修改完主配置文件后保存起来,必须重启Apachec服务器,如果不重启会 导致配置无效,最终导致实验失败。 六、实验步骤 1、检测是否安装了Apache软件包: A、首先为服务器网卡添加一个固定的IP地址。 B、在Web浏览器的地址栏中输入本机的IP地址,若出现Test Page测试页面(该 网页文件的默认路径为var/www/html/index.html)如下图1所示就说明Apache 已安装并已启动。
另一种方法是使用如下命令查看系统是否已经安装了Apache软件包: [root@rhe14~]# rpm –aq | grep httpd Httpd-suexec-2.0.52-9.ent Httpd-manual-2.0.52-9.ent System-config-httpd-1.3.1-1 Httpd-devel-2.0.52-9.ent 出现以上内容表明了系统已安装Apache软件包。 2、安装Apache软件包 超级用户(root)在图形界面下选择“应用程序”|“系统设置”|“添加/删除应用程序”命令,选择“万维网服务器”软件包组,在单击“更新”按钮就可以安装与Apache相关的软件包。 3、Apache的基本配置 (1)打开终端输入[root@rhe14~]# /etc/rc.d/init.d/httpd start //启动Apache 或者 [root@rhe14~]# apachectl start //启动Apache [root@rhe14~]# apachectl stop //停止Apache服务 [root@rhe14~]# apachectl restart //重启Apache服务 [root@rhe14~]# apachectl configtest //测试Apache服务器配置语法(2)在httpd.conf将Apache的基本配置参数修改、将一些注释的语句取消注释,或将某些不需要的参数注释掉。 (3)将包括index.html在内的相关网页文件复制到指定的Web站点根目下(var/www/html/index.html) (4)重启httpd进程 (5) 在Web浏览器下输入配置的ip地址出现如下图2,那表明基本配置成功了:
这篇文章列举了四种情况下,配置网站301全站重定向的方法。这四种方法均是经过我个人网站实践验证过,绝对可用。下面的步骤中的例子,设置的是把不加www的域名转向到加www的域名。 1.第一种情况,如果你有服务器或者vps,且系统是windows系统的。 在iis下,可以很简单的设置实现全站重定向。 具体方法是:在VPS里把https://www.doczj.com/doc/191936516.html, 域名的网站搭建好以后,按照同样的方式搭建一个https://www.doczj.com/doc/191936516.html,的网站。然后打开“iis”。在https://www.doczj.com/doc/191936516.html,的网站上鼠标右键打开选择属性,选择“主目录”标签,然后按照这个图设置 2.第二种情况,如果你的系统是Linux的。 做整站301跳转,很简单。如下修改文件httpd.conf或者.htaccess文件保存就可以了: RewriteEngine On RewriteCond %{HTTP_HOST} ^https://www.doczj.com/doc/191936516.html,[NC] RewriteRule ^(.*)$ https://www.doczj.com/doc/191936516.html,/$1 [L,R=301] 3.第三种情况,如果你是虚拟主机用户,如果你有子目录,恭喜你,也可以整站301 重定向。具体方法是: 1.新建404.asp,把下面代码放到新建的404文件中保存。 代码 <%@ Language=VBscript %> <% Dim PageURL PageURL="http://"&Request.ServerVariables("HTTP_HOST")&request.ServerVar iables("URL")&"?"&Request.ServerVariables("QUERY_STRING") PageURL = Replace(PageURL, "https://www.doczj.com/doc/191936516.html,/404.asp?404;https://www.doczj.com/doc/191936516.html,: 80","") //修改为你的老域名 Response.Status="301 Moved Permanently"
servlet的两种重定向方法的区别及应用 一问题:在servlet/JSP编程学习中,发现有两种方法可以实现服务端输出重定向,一种是通过forward方法(例如JSP中的
IIS设置301重定向 IIS服务器下做301永久重定向设置方法。 IIS6设置301重定向: 1.新建一个站点,对应目录如E:\wwwroot\301web。该目录下只需要1个文件,即index.html或者加个404.htm。绑定要跳转的域名,如图: 2.在IIS中选中刚才我们建立的站点,右键-属性-主目录,选择重定向到,输入
网址如:xxxx,同时注意选中下面的资源的永久重定向选项。 3.到此,我们已经完成了将xxxx这个域名301重定向到xxxx的工作。 注意问题: “上面输入准确的URL(X)”这个选项建议不要选。 不选的结果是: 当输入xxxx转到了xxxx, 当输入xxxx/sanwen/suibi/时,转到了xxxx/sanwen/suibi/。 选上的结果是: 当你输入xxxx或者xxxx/sanwen/suibi/都会转到xxxx。 好了,如果只是想把不带www的转到带www的或者其他没有用过的域名转到正在使用的域名,这样就可以了。但是如果你要的域名已经做过网站,想要把权重传递给新网站,可以参考下面这个方法: 第一步同上,主要是第二步,如图:
注意红色字体的部分,在重定向到地址的后面多了$S$Q字符,即写成了xxxx$S$Q。“上面输入准确的URL(X)”这个选项也打了勾。 对于$S$Q字符,这里解释一下: $S 将请求的URL 的后缀传递给新的URL。后缀是用重定向的URL 代替之后,初始URL 中所保留的部分。 如果未设置 EXACT_DESTINATION 标志,则结果目标URL 的名称将具有所请求文件的名称(作为文件夹名称)以及文件名本身。 $Q 将初始URL 中的参数(如 querystring 参数)传递至新的 URL,包括问号(?)。如果不加上$S$Q字符的话,内页的301都会跳转到首页,加上$S$Q字符的目的就是内页也能准确的跳转到新域名的对应内页。 好了,这样就完成了301永久重定向的设置,设置好之后最好能测试下是否返回的是301值,推荐个网址:seoconsultants/tools/headers。 百度对301的反应并不像想象中那么慢,第二天就收录了xxxx这个页面,快照最新。当然,快照的内容是xxxx的内容,而不是301web里index.html的内容。 IIS7设置301重定向: 非常简单。选择中网站,”HTTP重定向“,勾选”将请求重定向到此目标“,
重要提示 Web服务器包括apache的安装部署和W AS7 Plugin安装部署两部分,如果的websphere应用服务器使用非集群模式,plugin则不需要安装,只需配置本文2.1章节内容,如果websphere 应用服务器使用群集模式,则需要按照本文2.2章节进行plugin安装配置。 1 Apache安装 Apache的安装和配置现在可以采用脚本自动化安装,脚本就是139ftp上的 apache_install_script.sh 请下载到web服务器中,并执行即可。 注意:在执行脚本安装前请确认web服务器的/opt/apache下没有安装过apache,并且web 服务器能上外网(能ping通https://www.doczj.com/doc/191936516.html,) 成功安装apache并测试通过后即可直接继续本文第二章节Was7 Plugin安装 在root下进行root进入方法#su 然后输入密码 1.1 准备安装 关闭系统自带的web服务: #chkconfig httpd off 在线安装gcc #yum install gcc cc 下载并解压安装程序: #cd ~/ #wget https://www.doczj.com/doc/191936516.html,/httpd/httpd-2.2.15.tar.gz #tar –zxvf httpd-2.2.15.tar.gz -C /usr/src Web 服务器安装部署手册 Page 4 of 21 1.2 安装Apache Web Server 进入源码目录: #cd /usr/src/httpd-2.2.15 编译源文件: #./configure //(安装到默认目录) 形成安装文件: #make 安装程序: #make install 1.3 验证安装 进入安装后目录: # cd /opt/apache/apache-2.2.15/bin 检查进程模式: #./apachectl –l Compiled in modules: core.c worker.c http_core.c mod_so.c 启动Apache Web Server:
1.格式 这是一个链接 这是一个段落
【实验8】Apache服务器的安装和配置 一、实验目的: 1.掌握Apache Web服务器的安装和配置。 2.使用虚拟主机在同一台服务器上架设多个网站。 二、【实验环境】 1.虚拟机软件VM Ware 6.0,Redhat Enterprise Linux虚拟机或光盘镜像文 件。 2.2台以上机器组成的局域网。 三、【实验原理】 (一)Apache服务简介 Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。 Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web 服务器软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。 (二)虚拟主机 所谓虚拟主机,也叫“网站空间”就是把一台运行在互联网上的服务器划分成 多个“虚拟”的服务器,每一个虚拟主机都具有独立的域名和完整的Internet服务 器(支持WWW、FTP、E-mail等)功能。一台服务器上的不同虚拟主机是各自 独立的,并由用户自行管理。 虚拟主机技术是互联网服务器采用的节省服务器硬体成本的技术,虚拟主机 技术主要应用于HTTP服务,将一台服务器的某项或者全部服务内容逻辑划分 为多个服务单位,对外表现为多个服务器,从而充分利用服务器硬体资源。如果 划分是系统级别的,则称为虚拟服务器。
(三)Linux中虚拟主机的分类 1、基于IP地址的虚拟主机 如果某公司有多个独立的IP地址可用,那么可以用不同的IP地址来配置虚拟主机。 2、基于端口的虚拟主机 如果只有一个IP地址,但是要架设多个站点,可以使用端口来区分,每个端口对应一个站点。这样配置的话,用户在访问的时候必须在 URL中指明端口号才能访问相应的网站。 3、基于名称的虚拟主机 使用基于IP地址或者端口的虚拟主机,能够配置的站点数目有限,而使用基于名称的虚拟主机,可以配置任意数目的虚拟主机,而不需要 额外的IP地址,也不需要修改端口号。 四、实验步骤 本实验请勿使用【系统】→【管理】→【服务器设置】中的【HTTPD】工具来配置,否则后果自负! (一)Apache服务器的启动 1、测试是否已安装Apache服务器: [root@localhost ~]#rpm –qa httpd 2、启动Apache服务器: [root@localhost ~]#service httpd start (二)基于端口的虚拟主机的配置 1、在/etc/httpd目录中,建立一个名为vhostconf.d的子目录,用来存放虚拟 主机的配置文件。 2、在/var/www目录中,建立一个名为websites的子目录,用于存放网站源 文件;在website目录下再建立ipvhost1和ipvhost2文件夹,用于区分各 个站点。
301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。 虚拟主机设置方法: 若是我司windows虚拟主机,请按以下流程操作: 1.登录管理中心-主机管理-管理-ISAPI筛选器设置-开启自定义的URL静态化支持 2.系统提示成功后,点击管理中心-文件管理,找到others\discuz\httpd.conf 文件,点击最右边下载图标将此文件下载到您的计算机 3.用记事本打开该文件,在RepeatLimit 32下增加如下两行(假设主机上绑定有三个域名 https://www.doczj.com/doc/191936516.html,,https://www.doczj.com/doc/191936516.html,, https://www.doczj.com/doc/191936516.html, ,需要的是将所有的域名都301重定向至https://www.doczj.com/doc/191936516.html,,则规则如下:) RewriteCond %{HTTP:Host} !^https://www.doczj.com/doc/191936516.html,$ RewriteRule (.*) https://www.doczj.com/doc/191936516.html,$1 [NC,R=301] 说明:将以上规则中的两个https://www.doczj.com/doc/191936516.html,替换为您自己的域名即可,两个写一样。 4.将修改好的文件用FTP或者管理中心文件管理的在线上传功能上传到others\discuz\目录替换原文件即可 若是我司linux虚拟主机,请按以下流程操作: 1.在管理中心-主机管理-管理-文件管理中打开在线文件管理器 2.点击文件管理器菜单中的“新建文件”,输入文件名 .htaccess 3.双击刚才新创建的.htaccess文件,输入以下内容:
Linux下搭建web服务器 Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的 Web服务器软件之一。Apache取自“a patchy server”的读音,意 思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、 速度快、性能稳定,并可做代理服务器来使用。 本来它只用于小型或试验 Internet网络,后来逐步扩充到各种Unix 系统中,尤其对Linux的支持相当完美。Apache有多种产品,可以支持SSL技术,支持多个虚拟主机。Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此,在一个Apache Web站点扩容时,通常是增加服务器或扩充群集节点 而不是增加处理器。到目前为止Apache仍然是世界上用的最多的Web 服务器,市场占有率达60%左右。世界上很多著名的网站如Amazon.c om、Yahoo!、W3 Consortium、Financial Times等都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、Windows、Linux 系统平台上)以及它的可移植性等方面。 Apache的诞生极富有戏剧性。当NCSA WWW服务器项目停顿后,那些 使用NCSA WWW服务器的人们开始交换他们用于该服务器的补丁程序,他们也很快认识到成立管理这些补丁程序的论坛是必要的。就这样,诞生了Apache Group,后来这个团体在NCSA的基础上创建了Apache。 Apache的主要特征是: 可以运行上所有计算机平台; 支持最新的H TT P1.1协议; 简单而强有力的基于文件的配置; 支持通用网关接口CGI; 支持虚拟主机; 支持H TT P认证; 集成P erl脚本编程语言;
以前也没怎么关注301重定向,第一因为没有网站要重定向,第二对于不带www的域名我都是用的转发到带www的域名。不过一场风波之后,很多服务商已经不提供转发服务了,虽说易名现在还可以享用到免费的转发服务,但是却不能不带www的转发到带www的同时进行MX记录解析,这对于需要MX解析的朋友也是一大烦恼。 而且有些域名在国外,转发更是用不了,也只能进行301永久重定向了,不然搜索引擎是把不带www 的站和带www的站分开对待的,只是我们习惯于用带www的域名罢了。 在网络上看了些教程,再根据自己的实践,也终于搞定了IIS服务器上的301永久重定向设置问题。实现方法如下: 1.新建一个站点,对应目录如E:\wwwroot\301web。该目录下只需要1个文件,即index.html或者加个404.htm。绑定要跳转的域名,如图: 2.在IIS中选中刚才我们建立的站点,右键,属性,主目录,选择重定向到,输入网址如: https://www.doczj.com/doc/191936516.html,,同时注意选中下面的资源的永久重定向选项。如下图:
3.到此,我们已经完成了将https://www.doczj.com/doc/191936516.html,这个域名301重定向到https://www.doczj.com/doc/191936516.html,的工作。 注意问题: “上面输入准确的URL(X)”这个选项建议不要选。 不选的结果是: 当输入https://www.doczj.com/doc/191936516.html,转到了https://www.doczj.com/doc/191936516.html,, 当输入https://www.doczj.com/doc/191936516.html,/sanwen/suibi/时,转到了https://www.doczj.com/doc/191936516.html,/sanwen/suibi/。 选上的结果是: 当你输入https://www.doczj.com/doc/191936516.html,或者https://www.doczj.com/doc/191936516.html,/sanwen/suibi/都会转到https://www.doczj.com/doc/191936516.html,。 好了,如果只是想把不带www的转到带www的或者其他没有用过的域名转到正在使用的域名,这样就可以了。但是如果你要的域名已经做过网站,想要把权重传递给新网站,可以参考下面这个方法: 第一步同上,主要是第二步,如图:
Apache服务器的安装与配置 一、安装Apache 双击可执行文件apache_1.3.33-win32-x86-no_src.exe,将Apache服务器软件安装至C:\Apache目录下。 二、设置C:\apache\conf\httpd.donf文件 修改Apache的核心配置文件c:\apache\conf\httpd.conf(说明一点:“#”为Apache的注释符号)。修改方法如下: 1、寻找到ServerName。这里定义你的域名。这样,当Apache Server运行时,你可以在浏览器中访问自己的站点。如果前面有#,记得删除它。 2、寻找到ServerAdmin。这里输入你的E-Mail地址。 (以上两条在安装时应该已经配置好了,所以不必改动,这里介绍一下,主要是为了日后的修改) 3、寻找到。向下有一句Options,去掉后面所有的参数,加一个All(注意区分大小写!A 大写,两个l小写。下同。);接着还有一句Allow Override,也同样去掉后面所有的参数,加一个All。
描述:将远程服务器映射到本地服务器的URL空间 语法:ProxyPass [路径] !|url [键=值键=值...]] [nocanon] 上下文:server config, virtual host, directory 状态:扩展 模块:mod_proxy 该指令可以将远程服务器映射到本地服务器的URL空间;本地的服务器并不是扮演传统意义上的代理服务器的角色,而是表现为远程服务器的一个镜像。此本地服务器常被成为反向代理(reversed proxy)或者是网关(gateway)。路径是指本地虚拟路径的名字;url指远程服务器的一个部分URL,不能包含查询字符串。 注意:在使用ProxyPass指令的时候,ProxyRequests指令通常都应该是关闭的。 假设本地服务器的地址是https://www.doczj.com/doc/191936516.html,/ ,那么 ProxyPass /mirror/foo/ https://www.doczj.com/doc/191936516.html,/ 将会把对https://www.doczj.com/doc/191936516.html,/mirror/foo/bar的本地请求内部转换成到https://www.doczj.com/doc/191936516.html,/bar的代理请求。 其中,!指令当你不想对某个子目录进行反向代理的时候就有用了,例如: ProxyPass /mirror/foo/i ! ProxyPass /mirror/foo https://www.doczj.com/doc/191936516.html, 将会把所有的/mirror/foo请求重定向到https://www.doczj.com/doc/191936516.html,除了对/mirror/foo/i的请求。 注意: 顺序很重要:排除的指令必须在一般的ProxyPass指令之前。 和Apache 2.1一样,具备了使用到后端服务器的线程池的能力。使用“键=值”的参数便可调节线程池的分配。硬性最大值(Hard Maximum)的默认值为当前MPM中每个进程的线程数量。在Prefork MPM中,该值总是为1,在Worker MPM中,该值受ThreadsPerChild控制。 设置min可以决定有多少到后端服务器的链接始终打开。根据需要最多创建数量为柔性最大值(Soft Maximum),也就是smax的链接。任何超出smax数量的链接都会指定一个生存时间也就是ttl。Apache不会同时创建超过硬性最大值(或max)数量的到后端服务器的链接。 ProxyPass /example https://www.doczj.com/doc/191936516.html, smax=5 max=20 ttl=120 retry=300 参数默认值描述 min 0 到后端服务器的总是打开的链接最小数。 max 1…n 允许连接到后端服务器的硬性最大链接数。硬性最大值的默认值为当前MPM 中每个进程的线程数量。在Prefork MPM中,该值总是为1,在Worker MPM中,该值受ThreadsPerChild控制。
第二章习题答案 1.(C) 2.( A) 3.(B) 4.问号后面的内容为请求参数名和参数值对,若有多个参数,中间用“&”符号分隔,参数名和参数值之间用等号(=)分隔,问号后面的内容称为查询串(query string),可以通过请求对象的getQueryString()得到查询串的内容。 5.HTTP请求结构由请求行,请求头,消息头,消息体构成;请求行由方法名,请求资源的URI和HTTP版本构成。 6.HTTP响应结构由状态行和状态码,响应头,响应数据构成;其中状态行包括HTTP版本,说明请求结果的响应状态码以及描述状态码的短语。 7. 8.(C) 9.(1)RequestDispatcher对象是请求转发器,他用来把当前请求转发到指定的资源;
(2)响应重定向实际上是服务器向浏览器发送一个特殊的响应头(Location 状态码302),他告诉浏览器连接到新的位置。使用这种方式可以在浏览器的地址栏看到地址的变化。重定向是作为一个新的请求来看待的,因此,所有的请求作用域的参数在重定向到下一个页面都会失效。另外,使用sendRedirect()重定向时,资源不能位于WEB-INF目录中。 (3)使用请求转发可以共享请求作用域中的数据,使用响应重定向可以共享会话作用域中的数据。 10.可以用public Enumeration getAttributeNames()枚举的方式来获得请求参数的名称,然后再使用请求对象来存储数据。 11(B)12(C) 13○1(E)○2.(C) ○3(D)○4(B)○5(A) 14.新的URL为:https://www.doczj.com/doc/191936516.html,/myapp/foo/stuff.html 15. 方法一:覆盖Servlet的init(ServletConfigconfig),然后把容器创建的ServletConfig 对象保存到一个成员变量中; 方法二:在Servlet中直接使用getServletConfig()获得ServletConfig对象。 16
1、如何设置请求等待时间 在httpd.conf里面设置: TimeOut n 其中n为整数,单位是秒。 设置这个TimeOut适用于三种情况: 2、如何接收一个get请求的总时间 接收一个post和put请求的TCP包之间的时间 TCP包传输中的响应(ack)时间间隔 3、如何使得apache监听在特定的端口 修改httpd.conf里面关于Listen的选项,例如: Listen 8000 是使apache监听在8000端口 而如果要同时指定监听端口和监听地址,可以使用: Listen 192.170.2.1:80 Listen 192.170.2.5:8000 这样就使得apache同时监听在192.170.2.1的80端口和192.170.2.5的8000端口。 当然也可以在httpd.conf里面设置: Port 80 这样来实现类似的效果。 4、如何设置apache的最大空闲进程数 修改httpd.conf,在里面设置: MaxSpareServers n 其中n是一个整数。这样当空闲进程超过n的时候,apache主进程会杀掉多余的空闲进程而保持空闲进程在n,节省了系统资源。如果在一个apache非常繁忙的站点调节这个参数才是必要的,但是在任何时候把这个参数调到很大都不是一个好主意。 同时也可以设置: MinSpareServers n 来限制最少空闲进程数目来加快反应速度。 5、apache如何设置启动时的子服务进程个数 在httpd.conf里面设置: StartServers 5 这样启动apache后就有5个空闲子进程等待接受请求。 也可以参考MinSpareServers和MaxSpareServers设置。 6、如何在apache中设置每个连接的最大请求数 在httpd.conf里面设置: MaxKeepAliveRequests 100 这样就能保证在一个连接中,如果同时请求数达到100就不再响应这个连接的新请求,保证了系统资源不会被某个连接大量占用。但是在实际配置中要求尽量把这个数值调高来获得较高的系统性能。 7、如何在apache中设置session的持续时间 在apache1.2以上的版本中,可以在httpd.conf里面设置: KeepAlive on KeepAliveTimeout 15 这样就能限制每个session的保持时间是15秒。session的使用可以使得很多请求都可以通过同一个tcp