【发布时间】:2015-08-31 18:57:55
【问题描述】:
如果我的网址是
http://www.example.com/book/book1/35.1/1
url 返回 404 未找到
如果我的网址是
http://www.example.com/book/book1/34/1
网址没问题
下面是我的 .htaccess 文件
Options +Indexes
RewriteEngine on
RewriteBase /book
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
RewriteRule ^([^/]+)/(\d+)/([^/]+)$ index.php?id=$1&num=$2&page=$3 [L,QSA]
RewriteRule ^([^/]+)/(\d+)/?$ index.php?id=$1&num=$2 [L,QSA]
RewriteRule ^([^/]+)/?$ index.php?id=$1 [L,QSA]
我不确定为什么句号似乎不起作用,我该如何更改 htaccess 来处理这个问题。
谢谢
【问题讨论】:
-
或者只是
([\d.]+)而不是(\d+)。 -
[\d.]+)将允许多个句点,或者只允许一个句点并且没有数字。 -
好吧,检查一般格式可能就足够了。目标脚本仍然需要验证实际值,同样
9999999也可能无效。
标签: php regex apache .htaccess