繁体   English   中英

将 domain.com/shop 重定向到 www.domain.com/shop

[英]Redirect domain.com/shop to www.domain.com/shop

注意:在将其标记为重复之前,请阅读完整的问题。 我已经应用了对我不起作用的波纹管建议。

1 - mod 从 .domain 重写为 www.domain htaccess

2 - .htaccess 从 http://www.domain/ 重定向到 https://domain.com

3 - .htaccess 将任何域/目录重定向到 www.domain/directory

我们有一个购物网站,我们将其托管在主机 (CloudLogin) 上。 主站点建立在 Joomla CMS 和 Magento 上作为购物车。

主站点 URL 是 www.domain.com,购物车 URL 是 domain.com/shop(不带 www)。

我们需要的是用 (www) 显示两个 URL。

所以我们需要 Magento 文件夹,即 domain.com/shop 也位于 www URL 上。

我找到了一些关于堆栈溢出的解决方案,但它们对我不起作用,因为它总是显示消息浏览器(重定向过多或 /page 未正确重定向)

注意: .htaccess 文件位于 (shop) 文件夹中。

波纹管是我到目前为止尝试过的:

1 -

# anything.com to www.anything.com
RewriteCond %{HTTP_HOST} ^[^.]+(\.[^.]+)?$ [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301,NE] 

上面的代码从 URL 中删除了 (shop) 目录,这会变成错误。

例如:domain.com// CAT1 / PROD1转化成了www.domain.com/cat1/prod1

2 -

RewriteCond %{REQUEST_URI} !^/shop/?.*$
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]

上面的代码甚至没有在上面应用 www 。

3 -

RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

以上内容来自domain.com/shop/ CAT1 / PROD1到www.domain.com/shop错误消息的代码重定向(重定向你太多次。)这似乎页上的无限循环。

4 -

RewriteCond %{HTTP_HOST} ^domain.com$ [NC]
RewriteRule ^(.*) http://www.domain.com/shop/$1 [L,R=301] 

这与 3 的作用相同。

5 -

#RewriteCond ${HTTP_HOST} doamin.com [OR]
#RewriteCond ${HTTP_HOST} www.doamin.com
#RewriteRule ^(.*)$ http://www.doamin.com/shop/$1 [QSA,R=301,L]

有谁知道我如何始终强制正确使用特定 URL 的 .htaccess?

我环顾四周,但找不到合适的答案。

尝试 :

RewriteEngine on

RewriteCond %{REQUEST_URI} !^/shop
RewriteCond www.%{HTTP_HOST} ^(?:www\.)?(www\..+)$ [NC]
RewriteRule ^ http://%1/shop%{REQUEST_URI} [NE,L,R]

您是否尝试过以下操作?

# anything.com to www.anything.com
RewriteCond %{HTTP_HOST} ^[^.]+(\.[^.]+)?$ [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/shop/$1 [L,R=301,NE]

由于请求源自/shop目录,因此它们不会在请求的 URL 中包含该目录。

暂无
暂无

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

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