<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/security.cgi-bin.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'zh',
  ),
  'this' => 
  array (
    0 => 'security.cgi-bin.force-redirect.php',
    1 => '情形二：使用 cgi.force_redirect',
    2 => '情形二：使用 cgi.force_redirect',
  ),
  'up' => 
  array (
    0 => 'security.cgi-bin.php',
    1 => '以 CGI 模式安装时',
  ),
  'prev' => 
  array (
    0 => 'security.cgi-bin.default.php',
    1 => '情形一：只运行公开的文件',
  ),
  'next' => 
  array (
    0 => 'security.cgi-bin.doc-root.php',
    1 => '情形三：设置 doc_root 或 user_dir',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'zh',
    'path' => 'security/cgi-bin.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="security.cgi-bin.force-redirect" class="sect1">
    <h2 class="title">情形二：使用 <code class="literal">cgi.force_redirect</code></h2>
    <p class="simpara">
     配置指令 <a href="ini.core.php#ini.cgi.force-redirect" class="link">cgi.force_redirect</a>
     可以防止任何人通过如
     <var class="filename">http://my.host/cgi-bin/php/secretdir/script.php</var>
     这样的 URL 直接调用 <strong class="command">php</strong>。PHP 在此模式下只会解析已经通过了
     web 服务器的重定向规则的 URL。
    </p>
    <p class="simpara">
     通常 Apache 中的重定向设置可以通过以下指令完成：
    </p>
    <div class="example-contents">
<div class="apache-confcode"><pre class="apache-confcode">Action php-script /cgi-bin/php
AddHandler php-script .php</pre>
</div>
    </div>

    <p class="simpara">
     此选项只在 Apache 下进行过测试，并且要依赖于 Apache
     在重定向操作中所设置的非标准 CGI 环境变量
     <var class="envar">REDIRECT_STATUS</var>。如果 web
     服务器不支持任何方式能够判断请求是直接的还是重定向的，就不能使用这个选项，而应该用其它方法。请看下一节。
    </p>
   </div><?php manual_footer($setup); ?>