Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用.htaccess和mod_rewrite将提要重定向到另一个目录_Php_Regex_.htaccess_Mod Rewrite_Redirect - Fatal编程技术网

Php 使用.htaccess和mod_rewrite将提要重定向到另一个目录

Php 使用.htaccess和mod_rewrite将提要重定向到另一个目录,php,regex,.htaccess,mod-rewrite,redirect,Php,Regex,.htaccess,Mod Rewrite,Redirect,我想将所有提要文件请求(*.xml)重定向到一个php脚本,该脚本将调整请求的url,然后输出结果。我目前有一个脚本可以这样做,但最终会出现无限重定向循环。我知道Apache会一次又一次地请求调整后的文件,除非我有条件停止它,因此我在.htaccess文件中添加了一个条件,以仅处理源于root的文件。我认为这个概念是好的,但还是有同样的错误。脚本的最后一部分如下所示: ?> .htaccess文件如下所示: 选项+FollowSymlinks RewriteEngine On Re

我想将所有提要文件请求(*.xml)重定向到一个php脚本,该脚本将调整请求的url,然后输出结果。我目前有一个脚本可以这样做,但最终会出现无限重定向循环。我知道Apache会一次又一次地请求调整后的文件,除非我有条件停止它,因此我在.htaccess文件中添加了一个条件,以仅处理源于root的文件。我认为这个概念是好的,但还是有同样的错误。脚本的最后一部分如下所示:

?>

.htaccess文件如下所示: 选项+FollowSymlinks

   RewriteEngine On
   RewriteBase /
   #Only process .xml requests if they are from root
   RewriteCond %{REQUEST_URI} ^/$   
   RewriteRule ([a-zA-Z0-9]+\.xml$) checkForAuth.php?file=$1 [QSA] 
我使用castfeedvalidator得到以下错误:

警告:copy()[function.copy]:无法打开流:已达到重定向限制,正在第243行的/home/podcast/public_html/castfeedvalidater/ajax/validate.php中中止

谢谢,
Dion

您的
RewriteCond
看起来不正确,请尝试以下规则:

RewriteEngine On
RewriteBase /

# Only process .xml requests if they are from root
RewriteRule ^([\w-]+)\.xml$ checkForAuth.php?file=$1 [NC,L,QSA] 

您在浏览器中输入的URL是什么?此类型-。事实上,提要阅读器将请求url。
RewriteEngine On
RewriteBase /

# Only process .xml requests if they are from root
RewriteRule ^([\w-]+)\.xml$ checkForAuth.php?file=$1 [NC,L,QSA]