📄 mod_negotiation.html
字号:
<p><code class="directive"><a href="../mod/mod_mime.html#multiviewsmatch">MultiViewsMatch</a></code>指令指示Apache在选择文件时是否考虑不包含内容协商元信息的文件。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="CacheNegotiatedDocs" id="CacheNegotiatedDocs">CacheNegotiatedDocs</a> <a name="cachenegotiateddocs" id="cachenegotiateddocs">指令</a></h2>
<table border="1" cellpadding="0" cellspacing="0" bordercolor="#AAAAAA" class="directive">
<tr><th><a href="directive-dict.html#Description">说明</a></th><td>允许经过内容协商的文档被代理服务器缓存</td></tr>
<tr><th><a href="directive-dict.html#Syntax">语法</a></th><td><code>CacheNegotiatedDocs On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">默认值</a></th><td><code>CacheNegotiatedDocs Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">作用域</a></th><td>server config, virtual host</td></tr>
<tr><th><a href="directive-dict.html#Status">状态</a></th><td>基本(B)</td></tr>
<tr><th><a href="directive-dict.html#Module">模块</a></th><td>mod_negotiation</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">兼容性</a></th><td>从2.0版本起,语法有了变化</td></tr>
</table>
<p>如果设置为"On",则允许内容协商文档被代理服务器缓存。这可能意味着在代理服务器后面的客户端得到的文档并不是最符合他们情况的版本,但它能够使缓存更有效。</p>
<p>本指令只对HTTP/1.0浏览器的请求有效。HTTP/1.1在对内容协商文档进行缓冲方面提供了更好的控制,本指令对于HTTP/1.1的应答没有效果。</p>
<p>在2.0版本以前,<code class="directive">CacheNegotiatedDocs</code>指令不带任何参数;它会自己在目录存在的情况下开启。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ForceLanguagePriority" id="ForceLanguagePriority">ForceLanguagePriority</a> <a name="forcelanguagepriority" id="forcelanguagepriority">指令</a></h2>
<table border="1" cellpadding="0" cellspacing="0" bordercolor="#AAAAAA" class="directive">
<tr><th><a href="directive-dict.html#Description">说明</a></th><td>指定无法匹配单个文档的情况下所采取的动作</td></tr>
<tr><th><a href="directive-dict.html#Syntax">语法</a></th><td><code>ForceLanguagePriority None|Prefer|Fallback [Prefer|Fallback]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">默认值</a></th><td><code>ForceLanguagePriority Prefer</code></td></tr>
<tr><th><a href="directive-dict.html#Context">作用域</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">覆盖项</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">状态</a></th><td>基本(B)</td></tr>
<tr><th><a href="directive-dict.html#Module">模块</a></th><td>mod_negotiation</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">兼容性</a></th><td>仅在 Apache 2.0.30 及以后的版本中可用</td></tr>
</table>
<p><code class="directive">ForceLanguagePriority</code>指令使用<code class="directive"><a href="#languagepriority">LanguagePriority</a></code>指令的设置,在服务器无法返回单个匹配文档的情况下,指定完成协商过程的方法。</p>
<p><code>ForceLanguagePriority Prefer</code> 在有几个等价选择的情况下,使用<code>LanguagePriority</code>的设定以提供一个有效的结果,而不是返回HTTP结果"300"(多重选择)。如果给出了下述指令,并且用户的<code>Accept-Language</code>头为<code>en</code>和<code>de</code>赋予了相同的品质系数"<code>.500</code>"(相同的品质系数是允许的),那么第一个匹配的变体:<code>en</code>将被返回。</p>
<div class="example"><p><code>
LanguagePriority en fr de<br />
ForceLanguagePriority Prefer
</code></p></div>
<p><code>ForceLanguagePriority Fallback</code> 使用<code class="directive"><a href="#languagepriority">LanguagePriority</a></code>指令在无法找到合适结果的情况下,指定一个有效的结果,而不是返回HTTP结果"406"(不可接受)。如果给出了下述指令,并且用户的<code>Accept-Language</code>头只允许<code>es</code>的返回结果,在这个变体没有找到的情况下,下述<code class="directive"><a href="#languagepriority">LanguagePriority</a></code>指令列表的第一个变体将被返回。</p>
<div class="example"><p><code>
LanguagePriority en fr de<br />
ForceLanguagePriority Fallback
</code></p></div>
<p><code>Prefer</code>和<code>Fallback</code>两个选项可以同时指定,这样在有一个以上有效变体的情况下,返回<code class="directive"><a href="#languagepriority">LanguagePriority</a></code>指令列表中第一个匹配的变体文档,而在没有变体能够匹配客户可接受的语言的情况下,返回第一个可用的变体文档。</p>
<h3>参见</h3>
<ul>
<li><code class="directive"><a href="../mod/mod_mime.html#addlanguage">AddLanguage</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="LanguagePriority" id="LanguagePriority">LanguagePriority</a> <a name="languagepriority" id="languagepriority">指令</a></h2>
<table border="1" cellpadding="0" cellspacing="0" bordercolor="#AAAAAA" class="directive">
<tr><th><a href="directive-dict.html#Description">说明</a></th><td>在客户端没有指示语言偏好的情况下,语言变体的优先级列表</td></tr>
<tr><th><a href="directive-dict.html#Syntax">语法</a></th><td><code>LanguagePriority <var>MIME-lang</var> [<var>MIME-lang</var>] ...</code></td></tr>
<tr><th><a href="directive-dict.html#Context">作用域</a></th><td>server config, virtual host, directory, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">覆盖项</a></th><td>FileInfo</td></tr>
<tr><th><a href="directive-dict.html#Status">状态</a></th><td>基本(B)</td></tr>
<tr><th><a href="directive-dict.html#Module">模块</a></th><td>mod_negotiation</td></tr>
</table>
<p>在处理MultiViews请求时,<code class="directive">LanguagePriority</code>指令在客户没有指示语言偏爱的情况下,设定语言变体的优先级列表。这个<var>MIME-lang</var>列表是按优先级降序排列的。</p>
<div class="example"><h3>示例:</h3><p><code>
LanguagePriority en fr de
</code></p></div>
<p>表示对于<code>foo.html</code>请求,如果<code>foo.html.fr</code>和<code>foo.html.de</code>同时存在,并且浏览器没有表明对语言的偏爱,那么<code>foo.html.fr</code>将被返回。</p>
<p>注意,本指令只在根据其它信息无法决定最好的语言或者<code class="directive"><a href="#forcelanguagepriority">ForceLanguagePriority</a></code>指令不是<code>None</code>时才有效。对正确实现的HTTP/1.1请求,本指令没有任何作用。</p>
<h3>参见</h3>
<ul>
<li><code class="directive"><a href="../mod/mod_mime.html#addlanguage">AddLanguage</a></code></li>
</ul>
</div>
</div>
<div id="footer">
<p class="apache">本文允许自由使用、分发、转载,但必须保留译者署名;详见:<a href="../translator_announcement.html#announcement">译者声明</a>。</p>
<p class="menu"><a href="../mod/index.html">模块索引</a> | <a href="../mod/directives.html">指令索引</a> | <a href="../faq/index.html">常见问题</a> | <a href="../glossary.html">词汇表</a> | <a href="../sitemap.html">站点导航</a></p></div>
</body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -