【问题标题】:Rewriting a number based URL using .htaccess RewriteRule使用 .htaccess RewriteRule 重写基于数字的 URL
【发布时间】:2011-01-28 10:30:32
【问题描述】:

如何将基于简单数字的 URL 重写为子文件夹?

我希望 http://mysite.com/123 重定向到 http://mysite.com/en/123

数字可以是 1 - 9999 之间的任何数字。我在 htaccess 中的尝试是:

RewriteRule ^([0-9]+)$ /en/$1/ [R]

但这不起作用。

【问题讨论】:

  • 请这样尝试:RedirectMatch 301 ^(\d{1,4})$ /en/$1
  • 你使用强制RewriteEngine on吗?其他规则有效吗?
  • RewriteEngine 已开启,所有其他重定向工作正常
  • 为了解决这个老问题(如果仍然需要),什么是“其他重定向”以及在询问 http://mysite.com/123 时您将重定向到哪里? (如果问题已过时,请删除或发布答案)

标签: apache .htaccess mod-rewrite url-rewriting


【解决方案1】:

你的语法是正确的,我只是删除了行尾的斜杠,它就可以了:

RewriteRule ^([0-9]+)$ /en/$1

【讨论】:

    【解决方案2】:

    确保这 3 行写在您的 HtAccess 文件中(对不起,我的英语不好)

    Options +FollowSymlinks
    RewriteEngine on
    RewriteBase /
    ##
    
    
    ## Now the rewrite
    RewriteRule ^([0-9]+)$ ./en/$1
    

    【讨论】:

      猜你喜欢
      • 2014-07-14
      • 1970-01-01
      • 1970-01-01
      • 2010-11-25
      • 1970-01-01
      • 2017-04-20
      • 2011-04-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多