Apache 不带R标志的htaccess重写规则创建外部重定向
我正在做我认为简单的.htaccess重写来创建更好的URL。我想要一个像这样的url:Apache 不带R标志的htaccess重写规则创建外部重定向,apache,.htaccess,redirect,Apache,.htaccess,Redirect,我正在做我认为简单的.htaccess重写来创建更好的URL。我想要一个像这样的url: http://my-site.com/design/design-name/ http://my-site.com/store?design=design-name 要像这样替换URL,请执行以下操作: http://my-site.com/design/design-name/ http://my-site.com/store?design=design-name 因此,我将此规则添加到我的.ht
http://my-site.com/design/design-name/
http://my-site.com/store?design=design-name
要像这样替换URL,请执行以下操作:
http://my-site.com/design/design-name/
http://my-site.com/store?design=design-name
因此,我将此规则添加到我的.htaccess中:
RewriteEngine On
RewriteRule ^design/(.+) http://my-site.com/store?design=$1 [L]
但是,它的行为就像有一个R标志和外部重定向(更改浏览器地址栏中的url)。重定向工作正常,但它不应该只在内部使用我使用的规则进行重定向吗?Ansari是正确的。如前所述,在目标URL中包含域名会将其转换为302重定向。改变
RewriteRule ^design/(.+) http://my-site.com/store?design=$1 [L]
到
它应该能正常工作。安萨里是正确的。如前所述,在目标URL中包含域名会将其转换为302重定向。改变
RewriteRule ^design/(.+) http://my-site.com/store?design=$1 [L]
到
它应该能正常工作。删除
http://my-site.com/
从重写规则中删除,只需离开store?design=$1[L]
。删除http://my-site.com/
从重写规则中退出,只需离开store?design=$1[L]
。