美元初级url重写指南 - apache 2.2 中文版参考手册(Primary URL Rewrite Guide - Apache 2.2 Chinese version reference manual)

rewrite  时间:2021-01-20  阅读:()

初级url重写指南- apache 2.2中文版参考手册Primary URLRewrite Guide -Apache 2. 2 Chinese version reference manual Note: according to your server configuration, it may benecessary to make some small changes, for example here, toincrease the [PT] mark in additional to enable mod_alias andmod_userdir, or in order to adapt to the directory level(.Htaccess) configuration for the server level rules arerewritten. A specific rule set should be thoroughly understoodbefore considering the application so that the problem can beavoided.

Normalized URL

Description:

On some web servers, a resource will have multiple URL. Inpractice and publishing, the standard URL should be used, whileothers are abbreviated or only used internally. No matter whatform of URL users use in the request, they should eventuallysee the standard URL.

Solution

Perform an external HTTP redirection to all non-standard URLto change its display and subsequent request in the browseraddress bar. The rule set in the following example replaces the/~user with the standard /u/user, and modifies the suffixslashes omitted by /u/user.

Rewr iteRul e ^/~ ( [^/]+) /?/ (. *) u/$1/$2 [R]Rewri teRule ^/u/

( [^/]+) $/$1/$2 / [R]

Normalized host name

Description:

The purpose of this rule is to force the use of a specific hostname instead of other names. For example, if you want to forcethe use of www.example.com instead of example.com, you canmodify it on the basis of the following solution:

Solution

Sites running on non 80 ports

Rewr iteCond%{HTTP_HOST} ! ^ful ly\.qual if ied\.domain\.name[NC]Rewrit eCond%{HTTP_HOST} ! ^$Rewri teCond%{SERVER_PORT} !^80$Rewrit eRule ^/ (. *)http://ful ly.qual if ied.domai n.name:%{SERVER_PORT}/$1 [L, R]Sites running on 80 ports

Rewr iteCond%{HTTP_HOST} ! ^ful ly\.qual if ied\.domain\.name[NC]RewriteCond%{HTTP_HOST} ! ^$Rewri teRule ^/ (. *)http://ful ly.qualif ied.domain.name/$1[L, R]

Mobile DocumentRoot

Description:

Typically, the DocumentRoot of the web server corresponds

directly to URL "/", but it is often not at the highest level.For example, you want visitors to enter the /about/ directoryfirst when they enter the site. You can use the rule set givenbelow.

Solution

Just redirect "/" to "/about/":

Rewr iteEngine onRewriteRule /about/ ^/$[R]

You can also use the RedirectMatch directive to solve theproblem:

RedirectMatch http://example.com/e/www/ ^/$

Ending slash

Description:

Each network has a bitter end to slash problem referencedirectory, if omitted, the server will produce an error,because if the request is "/~quux/foo" instead of"/~quux/foo/",the server will find a file called foo, and it is a directory,so wrong. In general, you can use this FAQ entry approach tosolve problems. But sometimes rewriting rules are needed tosolve problems, for example, after applying many complexrewriting rules.

Solution

The solution to this delicate problem is to automatically addsuffix slashes to the server. In order to achieve the goal, anexternal redirection must be used to enable the browser toprocess subsequent requests correctly, such as requests forpictures. If you execute only one internal rewrite, it may bevalid only for the directory page, but not for the page witha relative URL, because the browser has the possibility ofrequesting embedded objects. For example, if there is noexternal redirection, the request for image.gif in the/~quux/foo/index.html page becomes a request to the

/~quux/image.gif! So, it should be written like this:rewriteengine onrewritebase / ~ quux / RewriteRule ^ foo$ foo/ [ R ]

又懒又疯狂的做法是把这些写入其宿主目录中的顶级.htaccess中rewriteengine onrewritebase / ~ quux / Rewri teCond % { } - Drequest_filename RewriteRule ^ 。 + 【^ / ]  1美元/ [ R ]但是这样一来会增加处理上的开销。

将用户主目录移动到不同Web服务器

描述

通常许多网管在建立一个新的Web服务器时都会有这样的要求重定向一个Web服务器上的所有用户主目录到另一个Web服务器。解决方案

很简单在老的Web服务器上重定向所有的” / ~用户/ anypath”到” HTTP / / / ~New Server用户/ anypath” rewriteengine onrewriterule ^ /~ + HTTP ///~New Server1美元[ R ]

在多个目录中搜索页面

描述

有时会有必要使Web服务器在多个目录中搜索页面对此下或者其他技术无能为力。

解决方案

编制一个明确的规则集以搜索目录中的文件

RewriteEngine on #首先尝试在目录中寻找找到即停RewriteCond/你/ docroot /目录/ % { request_fi lename } - frewriterule ^

+ /你/ docroot /目录/ 1美元[1] #然后尝试在DIR2中寻找找到即停RewriteCond/你/docroot/DIR2/% {request_filename}- frewriterule ^ + /你/ docroot / DIR2 / 1美元[1] #再找不到就继续寻找其他的别名或不同目录RewriteRule ^ + - [葡]按照URL的片段设置环境变量

描述

希望保持请求之间的状态信息又不希望使用CGI来包装所有页面只是通过分离URL中的有用信息来做到。

解决方案

可以用一个规则集来分离出状态信息并设置环境变量以备此后用于x s s i或CGI。这样一个” /富/ S = j av a /酒吧/”的URL会被解析为” /食品/酒吧/” 而环境变量状态则被设置为“j av a” 。rewriteengine onrewriterule ^ * / S =  [ ^ / ] + / * 1美元/ 3美元[ E =现状 2美元]

虚拟用户主机

描述

如果需要为用户用户名支持一个WWW.用户名。host.domai n.com的主页但不在此机器上建虚拟主机而是仅用在此机器上增加一个DNS记录的方法实现。

解决方案

仅能对包含”主持人 “头的HTTP / 1. 1请求实现。可以使用以下规则集内部地将http://www.username.hos t.com/anypath重写为/家/用户名/ anypathrewriteengine onrewritecond% { http_host } ^WWW\。 [ ^ ] +。主持人。 COM RewriteRule ^ + % { } 1美元http_host [C]R ewr i t e Ru l e ^ WWW \。 + + \\主机* /家庭/ 1美元2美元为外来访问者重定向用户主目录

描述

对不是来自本地域ourdoma i n. com的外来访问者的请求重定向其用户主目录URL到另一个Web服务器www. s omewh ere.com有时这种做法也会用在虚拟主机的配置段中。

解决方案

只须一个重写条件rewriteengine onrewri tecond%{remote_host }  ^ 。 +。 ourdomain\。 COM Rewrit eRule ^ / ~。 + HTTP / /www. somewhere。 COM /1美元[ R ]

重定向锚

描述

By default, redirected to aHTML anchor is not feasible, because'#' will be transferred to '%23' . This, in turn, breaks theredirection.

Solution

Using the [NE] flag in the RewriteRule instruction (notescaped) .

Time dependent rewriting

Description:

In the page content needs to change according to the time ofthe occasion, such as redirection of specific pages, etc. , many

network management still uses CGI script method, how to usemod_rewrite to achieve it?

Solution

There are many variables called TIME_xxx that can be used inrewriting conditions, and the combination of dictionary based"<STRING", "=STRING" and ">STRING" can be used to implementtime dependent rewriting:

Rewr iteEng ineonRewri teCond%{TIME_HOUR}%{TIME_MIN} >0700Rewrit eCond%{TIME_HOUR}%{TIME_MIN} <1900Rewri teRule

^foo\.html$foo.day.htmlRewriteRule

^foo\.html$foo.night.html

In this case the foo.html at 07:00-19:00 time point tofoo.day.html, and in the rest of the time to foo.night.html,the home page is a good function. . .

Forward compatibility of YYYY to XXXX

Description:

How to maintain the forward compatibility of URL (still virtual)after changing a large number of document.YYYY files todocument.XXXX (e.g. , .Html to.Phtml)?

Solution

Just rewrite the file according to the reference file and test

whether the file with the new extension exists or if it exists,use the new one, otherwise it will still be used.

# document.html will be rewritten as document.phtml backwardscompatible set of rules#if and only if document.phtml has timeand there is no document.html RewriteEngine onRewriteBase/~quux/# shear and remember basenameRewriteRule ^ (. *)\.html$$1 [C E=WasHTML:yes]#, if there is then rewritten asdocument.phtmlRewri teCond%{REQUEST_FILENAME} .phtml ^

-fRewriteRule (. *) $$1.phtml or [S=1]# to return to theprevious basenameRewri teCond%{ENV:WasHTML} ^

^yes$RewriteRule (. *) $$1.html

Content processing

From old to new (internal)

Description:

Assuming that the file foo.html has been renamed to bar.html,you need to be backward compatible with the old URL, that is,the user can still use the old URL, and feel that the file hasbeen renamed.

Solution

Rewrite the old URL into a new one internally through thefollowing rules:

Rewr iteEngine onRewriteBase /~quux/Rewr iteRul e ^ foo

\.html$bar.Html

Linode($5/月),新用户注册送100美元,11个数据中心云服务器

关于Linode,这是一家运营超过18年的VPS云主机商家,产品支持随时删除(按小时计费),可选包括美国、英国、新加坡、日本、印度、加拿大、德国等全球十多个数据中心,最低每月费用5美元($0.0075/小时)起。目前,注册Linode的新用户添加付款方式后可以获得100美元赠送,有效期为60天,让更多新朋友可以体验Linode的产品和服务。Linode的云主机产品分为几类,下面分别列出几款套餐配置...

CloudCone中国新年特别套餐,洛杉矶1G内存VPS年付13.5美元起

CloudCone针对中国农历新年推出了几款特别套餐, 其中2019年前注册的用户可以以13.5美元/年的价格购买一款1G内存特价套餐,以及另外提供了两款不限制注册时间的用户可购买年付套餐。CloudCone是Quadcone旗下成立于2017年的子品牌,提供VPS及独立服务器租用,也是较早提供按小时计费VPS的商家之一,支持使用PayPal或者支付宝等付款方式。下面列出几款特别套餐配置信息。CP...

PacificRack 端午节再来一款年付$38 VPS主机 2核4GB内存1TB流量

这不端午节和大家一样回家休息几天,也没有照顾网站的更新。今天又出去忙一天没有时间更新,这里简单搜集看看是不是有一些商家促销活动,因为我看到电商平台各种推送活动今天又开始一波,所以说现在的各种促销让人真的很累。比如在前面我们也有看到PacificRack 商家发布过年中活动,这不在端午节(昨天)又发布一款闪购活动,有些朋友姑且较多是端午节活动,刚才有看到活动还在的,如果有需要的朋友可以看看。第一、端...

rewrite为你推荐
集成显卡和独立显卡哪个好集成显卡与独立显卡的区别。莫代尔和纯棉哪个好请问莫代尔棉和纯莫代尔哪个更好?985和211哪个好985大学好 还是211是什么意思朱祁钰和朱祁镇哪个好历史上真实的明英宗是怎么样的?性格之类的。朱祁钰和朱祁镇的相关的最好可以详细点的录音软件哪个好录音软件哪个好三国游戏哪个好玩三国系列的游戏哪个好玩?等额本息等额本金哪个好房贷是等额本金划算还是等额本息划算手机音乐播放器哪个好手机哪个音乐播放器的音质更好?手机杀毒哪个好手机杀毒软件哪个最好用手机炒股软件哪个好手机股票交易哪个平台最好
securitycenter edis 国外服务器 域名优惠码 512au 日本空间 最好看的qq空间 网络空间租赁 卡巴斯基是免费的吗 114dns 开心online paypal登陆 blaze crontab 极域网 香港云主机 西部数码空间购买 web服务器配置 灵动:鬼影实录2 北京市机动车牌照申请网站 更多