通过htaccess将文件夹重定向到另一个域

德克·尼梅耶(Derk Niemeijer)

你好,

首先,第一件事:我发现了两个类似的帖子,但是解决方案对我不起作用。所以这是问题:

我有一个OpenCart多商店安装。因此,我在2个不同的域中经营2家商店(一家用德语,一家用英语),文件位于一个文件夹(Web服务器)中。在将德国商店分离到其自己的域之前,我将商店的德语版本放在类似shop1.com/de/xxxx的子文件夹中。

因此,现在我需要一个htaccess重定向,它将所有德语URL转发到新域,例如:

english-shop.com/de/page1-> german-shop.de/page1

# Prevent Directoy listing 
Options -Indexes

# Prevent Direct Access to files
<FilesMatch "\.(tpl|ini|log)">
 Order deny,allow
 Deny from all
</FilesMatch>

RewriteEngine On
RewriteBase /

# append WWW
RewriteCond %{HTTP_HOST} !^www.
RewriteCond %{HTTP_HOST} !^$ [NC]
RewriteRule ^(.*) https://www.%{HTTP_HOST}/$1 [R,L=301]

# delete trailing slash
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [R=301,L]

# Force SSL
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{HTTPS} !=off

# OpenCart SEO URL Settings
RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
#RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
RewriteRule ^(?:(?:(\w{2})(?:/|\z))?(?:/|\z)?)?(?:([^?]*))? index.php?_route_=$2&site_language=$1 [L,QSA]

如果有人可以帮助我,那将是非常不错的。我确实找到并尝试了几种解决方案,但没有任何效果。Google真的为此而讨厌我:(

谢谢,最好,德克

马丁·加斯特肯珀(Martijn Gastkemper)
RewriteCond %{HTTP_HOST} !german-shop.de
RewriteRule ^de/(.*) http://german-shop.de/$1 [R,L=301]

第一行防止在调用german-shop.de/de/时发生重定向循环。第二行是/ de /之后的部分,并将其放在german-shop.de之后。

注意:在您的.htaccess中,您可以在前面加上www来做一些事情。并执行https。也许您需要调整我的行数以防止额外的重定向。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

htaccess将子域重定向到另一个域的子文件夹

htaccess将所有内容从域/文件夹重定向到另一个域

使用htaccess将文件夹重定向到另一个

将Web文件夹目录重定向到另一个htaccess

Htaccess将文件夹中的图像重定向到另一个URL

如何使用.htaccess别名/重定向子域到另一个域子文件夹

htaccess:将子文件夹重定向到另一个子文件夹

将域URL重定向到PHP中另一个域的子文件夹

htaccess重定向(如果文件夹存在),否则重定向到另一个文件夹

htaccess将文件请求从特定文件夹重定向到另一个主机名

.htaccess重定向到另一个文件夹

使用htaccess将子文件夹调用重定向到另一个URL

htaccess:如何将子文件夹路径重定向到另一个

将请求从一个文件夹重定向到htaccess中的另一个文件夹

将awk exec结果重定向到另一个文件夹

.htaccess仅将子文件夹的根目录重定向到另一个子文件夹?

将文件夹重定向到另一个文件夹,以避免其他.htaccess规则

如何仅将域重定向到另一个域而不是 nginx 中的子域和文件夹

.htaccess 将一个域重定向到另一个域

将桌面文件夹重定向到Windows中的另一个文件夹

使用htaccess从一个文件夹重定向到同一域中的另一个文件夹

将域重定向到另一个域上的特定页面(htaccess)

使用dns或htaccess将子域重定向到另一个域

htaccess URL屏蔽子文件夹到另一个域,而不是重定向

如何将一个文件夹中的文件子集重定向到另一个文件夹?

htacces,将一些子文件夹重定向到另一个

Apache Tomcat-将请求从一个文件夹重定向到另一个文件夹?

将一个硬盘上的文件夹重定向到另一个硬盘上的文件夹

将documentroot重定向到conf apache或.htccess中的另一个文件夹