在opencart中.htaccess中的url之间不允许有点

时间:2014-01-28 07:36:10

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

我一直试图在我的网址中包含点数但是.htaccess RewriteRule并没有帮助我这样做。 我一直在使用以下表达式

RewriteRule ^user/(\w+)/([-a-zA-Z0-9_\.]) index.php?id=$1&route=$2 [L,QSA]

虽然这允许我在url的末尾添加一个点,但它不允许我在url之间这样做。

例如,如果我使用     http://localhost/opencart/user/vendor_name.

它不会出错,但如果我使用     http://localhost/opencart/user/vendor.name

它给出了找不到页面的错误。

任何人都可以给我一个允许我这样做的表达。

1 个答案:

答案 0 :(得分:0)

因为你的正则表达式是错误的。斜杠后[-a-zA-Z0-9_\.]只匹配一个点。

尝试此规则

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^user/[-\w.]+)/([-\w.]+)/?$ index.php?id=$1&route=$2 [L,QSA]