动态 .htaccess 规则

发布于 2024-12-11 20:46:16 字数 256 浏览 0 评论 0原文

自去年以来我更新了我的网站两次,并且自第一个版本以来我有不同的页面名称。是否可以在apache中创建动态规则?

例如:

我曾经有这些页面(示例):

  • /abc123(版本1)
  • /abc_123(版本2)
  • /abc-123/(版本3-当前)

我想创建一个规则,将abc123重定向到abc_123,如果它存在,如果存在则将 abc_123 更改为 abc-123。 谢谢

I updated my site twice since the last year and I have different page names since my first version. Is it possible to create dynamic rules in apache?

for example:

I use to have these pages (example):

  • /abc123 (version 1)
  • /abc_123 (version 2)
  • /abc-123/ (version 3 - current)

I want to create a rule that will redirect abc123 to abc_123 if it exists and abc_123 to abc-123 if it exists.
Thanks

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

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

发布评论

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

评论(2

蹲墙角沉默 2024-12-18 20:46:16

为什么不是这个?

RewriteRule ^([a-z]+)([0-9]+)$ /$1-$2 [NC,L]
RewriteRule ^([a-z]+)_([0-9]+)$ /$1-$2 [NC,L]

编辑:

或者您可以使用 1 条规则:

RewriteRule ^([a-z]+)(_?)([0-9]+)/?$ /$1-$3 [NC,L]

这样可以轻松地在 (_?) 中添加字符,而不是一遍又一遍地创建相同的规则,但有一点差异。

Why not this?

RewriteRule ^([a-z]+)([0-9]+)$ /$1-$2 [NC,L]
RewriteRule ^([a-z]+)_([0-9]+)$ /$1-$2 [NC,L]

EDIT:

or you can use 1 rule:

RewriteRule ^([a-z]+)(_?)([0-9]+)/?$ /$1-$3 [NC,L]

this way it's easy to add characters in the (_?) instead of creating the same rule over and over with a little variance.

菩提树下叶撕阳。 2024-12-18 20:46:16

我发现这个示例

RewriteEngine on
#
# If the requested URL exists as a file with a .php extension
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
# internally rewrite requested .html URL to .php file
RewriteRule ^(([^/]+/)*[^.]+)\.html$ /$1.php [NC,L]

您将需要阅读各种选项并对其进行编辑以使其它适合你的情况。

I found this example:

RewriteEngine on
#
# If the requested URL exists as a file with a .php extension
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
# internally rewrite requested .html URL to .php file
RewriteRule ^(([^/]+/)*[^.]+)\.html$ /$1.php [NC,L]

You will want to read about the various options and edit it to make it work for your situation.

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