繁体   English   中英

htaccess:301 重定向删除部分 url

[英]htaccess: 301 redirect removing part of url

我正在尝试将我的商店从 Shopify 转移到 Woocommerce。 在移动我的域名之前,我有重定向 301 要做。 为了不使 .htaccess 文件变重,我想使用正则表达式从 url 中删除部分。

我想重定向

从:

https://"my-shop.com"/ products /"product-name"

到:

https://"my-shop.com"/"product-name"

从:

https://"my-shop.com"/ collections /"product-category-name"

到:

https://"my-shop.com"/"product-category-name"

所以要删除“产品”或“集合”

第一个问题:我完全不知道如何编码......我试图通过查看网络来理解,找到了一些代码,但对我来说太复杂了,我没有成功地适应我的问题。 如果我没有错,例如删除“产品”,它看起来像这样:

RewriteEngine on
RewriteRule ^products/(.*)$ /$1 [R=301,L]

第二个问题:如果我更改了产品名称或产品类别,其 url 不应遵循此规则,而是重定向到完全不同的 url。 我是否仍然可以将正则表达式用于其他产品和产品类别,但在之前添加重定向 301 以便它可以用于我修改的产品/类别?

你能不能试试以下。 以下是从 URL 中查找productscollections关键字。

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(products|collections)/(.*)/?$ /$2 [NC,L]


或者,如果您可以使用任何字符串代替productscollections使用此规则。

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/(.*)/?$ /$2 [NC,L]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM