我是编码 Clean URL 的新手,尽管我对它们如何工作的有根据的猜测是正确的。
我的第一步是创建一个兼容性工具来测试是否在服务器上启用了 mod_rewrite。我成功地创建了我需要的三个文件:PHP 工具文件、.htaccess 文件和要重写的文件 URL。
一个基本的 RewriteRule 已经到位,当我转到重写的 URL 时,它会成功重定向。但是,在尝试使用 PHP INCLUDE/REQUIRE 甚至 FILE_EXISTS 函数来引用重写的 URL 时,它会返回失败。这是不可能的,还是我走错了路?
如有必要,我很乐意发布代码(我正在用我的智能手机编写此代码),但现在我仍在尝试确定它是否有可能,如果可以,最好的方法是什么。
.ht 访问:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule .*rewrite_test\.php rewrite.php [nc]
</IfModule>
重写.php:
<?php
$mod_rewrite = TRUE;
echo "test";
?>
tester.php:
<?php
// Check if APACHE MOD_REWRITE is enabled for clean URLs
$mod_rewrite = file_exists('rewrite_test.php');
echo ($mod_rewrite ? "TRUE" : "FALSE");
?>
或 tester.php 代码替代:
<?php
// Check if APACHE MOD_REWRITE is enabled for clean URLs
$mod_rewrite = FALSE;
include_once('rewrite_test.php');
echo $mod_rewrite;
?>