.htaccess - 301 将整个域重定向到新的一个 + 几个单独的页面到新的 url
问题描述
我有 olddomain.com - 我想用 htaccess 和 301 重定向到 newdomain.com - 如果我要重定向整个域,这对我来说很容易并且工作得很好。
但是在新域上,我更改了几个 url(现在它们与以前的域不同),我想将整个域和几个特定页面重定向到几个特定页面,我不知道如何结合这 2 个条件(重定向整个域和重定向几个特定页面)。
这对我有用
RewriteEngine On
RewriteCond %{HTTP_HOST} ^olddomain.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.olddomain.com$
RewriteRule (.*)$ https://newdomain.com/$1 [R=301,L]
我想在代码中添加一些像这样的特定重定向,但我不知道如何将它组合在一起才能正常工作:
Redirect 301 /something/ https://newdomain.com/something-changed-new/
提前感谢您的帮助。
解决方案
在您的 .htaccess 文件顶部检查此重写
RewriteEngine On
RewriteRule ^something\/$ https://newdomain.com/something-changed-new/ [R=301,L]
RewriteRule ^other\/$ https://newdomain.com/something-changed-other/ [R=301,L]
RewriteRule ^old\/$ https://newdomain.com/new/ [R=301,L]
RewriteCond %{HTTP_HOST} ^(www\.)?olddomain\.com [NC]
RewriteRule (.*) https://newdomain.com/$1 [L]
推荐阅读
- swift - TLS CA 证书 SSL Pinning 使用 SWIFT-NIO-SSL
- c# - UdpClient 仅在同一台机器上的一个实例中接收 dgram
- java - java - 如何根据Java中从小到大的数字对有序列表进行排序?
- awk - 使用 awk 删除重复的空行
- apache - 两个站点的 Apache 虚拟主机无法正常工作
- hyperledger-fabric - 有没有办法在超级账本结构中获取用户私钥和公钥以进行数据加密
- git - 如何在不下载所有文件的情况下将现有 Git 链接到当前环境?
- azure-data-lake - azure blob 存储和 azure 数据湖存储之间的区别
- javascript - 如果选中复选框,如何对文本进行换行
- html - 为什么我的粘性定位不起作用?