更好的htaccess?

发布于 2024-11-02 16:11:27 字数 817 浏览 0 评论 0 原文

有没有更有效的方法来执行以下操作?我在网上找不到明确的解决方案。

一切都很顺利,但我只是有一种感觉,这是一个漫长的道路。

RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/item/([0-9\-]+)/([a-zA-Z0-9\-]+)/$  index.php?level1=$1&level2=$2&level3=$3&articleID=$4 [L]

RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/item/([0-9\-]+)/([a-zA-Z0-9\-]+)/$  index.php?level1=$1&level2=$2&level3=$3&articleID=$4 [L]

RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/item/([0-9\-]+)/([a-zA-Z0-9\-]+)/$  index.php?level1=$1&level2=$2&articleID=$3 [L]

如果我想为每一个添加一个 mediaID 可能性,我是否必须复制所有 3 个,然后添加 .../media/([0-9\-]+)/$ >...&mediaID=$x?示例 URL 为 /directors/item/16/nicholas-barker/showreel/media/111/

Is there a more efficient way of doing the below? I can't find a clear solutions online.

Everything works, but I just got this feeling that it's the long way round.

RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/item/([0-9\-]+)/([a-zA-Z0-9\-]+)/$  index.php?level1=$1&level2=$2&level3=$3&articleID=$4 [L]

RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/item/([0-9\-]+)/([a-zA-Z0-9\-]+)/$  index.php?level1=$1&level2=$2&level3=$3&articleID=$4 [L]

RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/item/([0-9\-]+)/([a-zA-Z0-9\-]+)/$  index.php?level1=$1&level2=$2&articleID=$3 [L]

If I want to add a mediaID possibility for each one, do I have to duplicate all 3 and then add .../media/([0-9\-]+)/$ and ...&mediaID=$x? A sample URL is /directors/item/16/nicholas-barker/showreel/media/111/

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

-柠檬树下少年和吉他 2024-11-09 16:11:27

也许你可以试试这个。我有一些问题要弄清楚你想要什么,但是:

RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)(?:/([a-zA-Z0-9\-]+)(?:/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+))?)?/item/([0-9\-]+)/([a-zA-Z0-9\-]+)/media/([0-9\-]+)/$ index.php?level1=$1&level2=$2&level3=$3&level4=$4&level5=$5&articleID=$6&articleSubId=$7&mediaID=$8 [L]

不存在的变量将只是空的。 (你必须检查这个
在index.php中)。顺便说一句,你的 $x 对我来说似乎语无伦次。您不会对文章 ID 等使用 URL 的相同部分...因此您必须在我的表达式中对它们进行一些调整(我对您的架构做出了强有力的假设。

Maybe you can try this. I have some problems to figure out want you want, but :

RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)(?:/([a-zA-Z0-9\-]+)(?:/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+))?)?/item/([0-9\-]+)/([a-zA-Z0-9\-]+)/media/([0-9\-]+)/$ index.php?level1=$1&level2=$2&level3=$3&level4=$4&level5=$5&articleID=$6&articleSubId=$7&mediaID=$8 [L]

The variable that do not exist would be just empty. (You'll have to check this
in index.php). By the way your $x seems to be incoherent to me. You don't use the same parts of the URL for you article ID etc... So you have to tune them a bit in my expression (i've made strong assumption on your architecture.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文