.htaccess 使用两个$\u GET重写规则

.htaccess 使用两个$\u GET重写规则,.htaccess,.htaccess,我的.htaccess文件是: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /art/art.php?galerie=$1 因此,由于这一点,我可以访问现有的不同galeries: 例如,website.com/art/sun或website.com/art/beach(只要galerie存在,否则会返回一条错误消息,说明页

我的.htaccess文件是:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /art/art.php?galerie=$1
因此,由于这一点,我可以访问现有的不同galeries: 例如,website.com/art/sun或website.com/art/beach(只要galerie存在,否则会返回一条错误消息,说明页面不存在)

到目前为止,一切正常

但是我还需要在页面上添加一个
$\u Get
: 例如,website.com/sun?row=2

但我不能这样做,因为sun?row=2不是注册的galerie。。。 如何解决此问题?

您可以使用QSA(查询字符串附加)标志将新查询字符串前置到目标:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /art/art.php?galerie=$1 [QSA]
现在这将重写

  • /foo?querystring

/art/art.php?galerie=foo&querystring