Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 通过htaccess将特定301重定向到另一个域_Apache_.htaccess_Redirect - Fatal编程技术网

Apache 通过htaccess将特定301重定向到另一个域

Apache 通过htaccess将特定301重定向到另一个域,apache,.htaccess,redirect,Apache,.htaccess,Redirect,在Stack Overflow中有很多关于通过htaccess重定向的答案,我对此有一些基本的了解。我需要这些结果,而不是将相同的路径重定向到新域: 将olddomain.com和www.olddomain.com重定向到hxxps://www.newdomain.com 将www.olddomain.com/example-page重定向到hxxps://www.newdomain.com/somepage 请注意,在条件2中,我想将子页面重定向到新域上的不同路径。第一部分对我来说很简单,但第

在Stack Overflow中有很多关于通过htaccess重定向的答案,我对此有一些基本的了解。我需要这些结果,而不是将相同的路径重定向到新域:

  • 将olddomain.com和www.olddomain.com重定向到hxxps://www.newdomain.com
  • 将www.olddomain.com/example-page重定向到hxxps://www.newdomain.com/somepage
  • 请注意,在条件2中,我想将子页面重定向到新域上的不同路径。第一部分对我来说很简单,但第二部分对我来说是个挑战。如何实现这些结果(针对301重定向)?

    尝试:

    RewriteEngine On
    
    RewriteCond %{HTTP_HOST} ^(www\.)?olddomain\.com$ [NC]
    RewriteRule ^$ https://www.newdomain.com/ [L,R=301]
    
    RewriteCond %{HTTP_HOST} ^(www\.)?olddomain\.com$ [NC]
    RewriteRule ^example-page$ https://www.newdomain.com/somepage [L,R=301]
    
    或者,如果您使用mod_alias进行重定向,则第二次重定向需要是
    RedirectMatch
    ,而不是
    redirect
    指令:

    RedirectMatch 301 ^/example-page https://www.newdomain.com/somepage
    

    谢谢你,乔恩。。是的,我会用重定向匹配来做第二个。主要问题是第一个问题,你解决了:)