正则表达式...URL 中的 URL?

正则表达式...URL 中的 URL?

我的 .htaccess 文件中有以下行,但它一直将我重定向到 404 错误。

重写规则 ^path1/([a-zA-Z0-9_-]+)/(.+)(/?)$ /file.php?variable1=$1&variable2=$2 [nc]

示例链接如下..

http://domain.com/path1/name23/http://domain2.com/stuff/is/here

我想将第二个 URL 转移到变量 2。

答案1

重写规则 ^path1/([a-z0-9_-]+)/([^\?]+)$ /file.php?variable1=$1&variable2=$2 [NC]

尝试上述规则,看看。您的模式不匹配,这就是为什么会出现 404 错误。顺便说一句,我删除了 AZ,因为 NC 无论如何都会使其不区分大小写。

答案2

我认为只有 [NC] apache 才会在硬盘上寻找名为“file.php?variable1=$1&variable2=$2”(变量已替换)的文件。您可以尝试使用 [R,NC] 或 [PT,NC](这一个需要 mod_proxy)

答案3

将日志级别增加到 Debug 并查看 mod_rewrite 正在执行的操作。

相关内容