gpt4 book ai didi

php - 使用正则表达式重写的 URL 不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 09:25:22 25 4
gpt4 key购买 nike

我的 /etc/apache2/apache2.conf 文件中有这个 RewriteRule 代码。

<Directory /var/www/html/demo/>
# New URL Structure
RewriteEngine On
Allow From All
RewriteBase /

RewriteRule "^page/(([A-Za-z0-9\-]+/)*[A-Za-z0-9\-]+)/(.*)$" detail.php?url=$1 [L]
</Directory>

我有这个 URL:http://example.com/page/parameter-1/parameter-2 并且 RewriteRule 工作完美,但是当我尝试使用这个 URL http://example.com/page/parameter-1 它不工作。

http://example.com/page/parameter-1 [Not working]
http://example.com/page/parameter-1/parameter-2 [Working]
http://example.com/page/parameter-1/parameter-2/parameter-3 [Working]

知道我做错了什么吗?

谢谢。

最佳答案

好的,让我们分解一下您的正则表达式匹配的内容:

^page/ - 您的 URL 必须以“page/”开头,到目前为止一切正常。

(([A-Za-z0-9\-]+/)* - 您的 URL 可以包含 0 个或多个段。

[A-Za-z0-9\-]+)/(.*)$ - 您的 URL 必须以某个段结尾,后跟斜杠,然后是任何内容

最后一部分是正则表达式出错的地方。您的第一个示例在“page/”之后没有斜线。

关于php - 使用正则表达式重写的 URL 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37087814/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com