将数字重写为默认页面

Rewrite numbers to default page

我正在尝试重写一个条件,该条件可以采用具有 numbers.html 的任何页面,假设如下所示:

12345.html
33443.html
234545656.html
9797423.html

并将其重定向到 index.php

RewriteRule ^([0-9]+)$ index.php [L]

我尝试了以下但它不起作用,非常感谢任何帮助。

您的代码有两个直接问题:

  1. 你必须在使用之前打开重写引擎并且
  2. 如果你想匹配以.html结尾的文件名,那么你必须对其进行编码。

试试这个:

RewriteEngine on
RewriteRule ^([0-9]+)\.html$ index.php [L]

然后再提示一些:

  • 您尝试的代码仅适用于 .htaccess 样式文件。但是必须首先在您的 http 服务器配置中启用此类文件的使用。
  • 一个 .htaccess 样式文件必须放置在正确的位置,在此示例中 实际保存 index.php 文件的文件夹中。
  • 必须安装并启用重写模块,否则这些命令将不可用。

一般性评论:

那些 .htaccess 样式文件是出了名的容易出错,难以调试,而且它们 确实 减慢了 http 服务器的速度,而且通常是徒劳的。您应该总是 喜欢将此类命令放在您的 http 服务器的真实主机配置中。 .htaccess 样式文件仅在您无法访问该配置的情况下作为最后的选择提供,例如在使用非常便宜的共享主机提供商时。