使用重定向并使用.htaccess重写QR码

时间:2013-09-19 19:28:38

标签: .htaccess redirect rewrite qr-code

我有一个有趣的问题,我有一个二维码,扫描后会将用户发送到以下地址:

enzymedica.org/ls/27210 

(这只是DEV网站的真正方式.com)

然后我成功地重定向到这个地址:

enzymedica.org/education/digestive/digest-gold.html

现在这里是问题发挥作用的地方,如果这就是它所做的那么我们就不会有问题,但是当二维码被扫描时它会贴上一个“?”然后是0000之后的数字。

所以实际上你收到的网址或多或少是这样的:

http://www.enzymedica.org/ls/27210?0000

并且在重定向时你会得到这个:

http://www.enzymedica.org/education/digestive/digest-gold.html?0000

所以我需要一些方法来重写网址以“.html”结尾,并且不会显示任何内容。

1 个答案:

答案 0 :(得分:1)

Options +FollowSymLinks -MultiViews

RewriteEngine On
RewriteBase /

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+\.html)\?.+ [NC]
RewriteRule ^ %1? [R=301,L]

上面将检查education/digestive/anythinghere.html是否有查询字符串,如果是,它会在没有查询字符串的情况下重定向。

或者,如果您想要使用该URL的精确重定向,则可以使用:

RewriteCond %{QUERY_STRING} !^$
RewriteRule ^(education/digestive/digest-gold\.html)$ /$1? [R=301,NC,L]

或者,如果您想在ls/id级别消除它:

RewriteCond %{QUERY_STRING} !^$
RewriteRule ^ls/([0-9]+)/?$ /ls/$1? [R=301,NC,L]