.htaccess 带有映射 url 和通用规则的重定向规则

.htaccess redirect rules with mapped urls and generic rules

我正在尝试获取 .htaccess 规则集以满足特定要求: 一些 url 映射到一个(使用重定向)到外部 urls.

我需要根路径才能到达另一个外部域的根路径。

url之前没有映射的,到第二个外域保持当前路径。

这是我试过的方法:

Redirect /current/url/from-domain http://newDomain1.com/new/url
Redirect /current/url/from-domain-2 http://newDomain1.com/new/url-2

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^/(.*)$ http://newDomain2.com/ [R]

我刚好满足了我需要的三个条件中的两个。所以应该是:

映射 urls -> 外部域 1 映射 url.

http://myCurrentDomain.com/current/url/mapped -> http://externalOne.com/new/url

未映射 urls -> 外部域 2 + 旧 url。

http://myCurrentDomain.com/{anything} (not mapped anything) -> http://externalTwo.com/{anything}

根路径->外域根路径

http://myCurrentDomain.com -> http://externalTwo.com

我只是一个使用 .htacces 的菜鸟,有什么想法吗?

好的,找到方法了:

// For any mapped route
RewriteCond %{REQUEST_URI} ^/path/to/orl/url.html$
RewriteRule ^ httph://myNewDomain1.com/new/path [L,R]
// endfor

RewriteCond %{REQUEST_URI} ^/(.*)$
RewriteRule ^ http://myNewDomain2.com%{REQUEST_URI} [R]

这仍然不是理想的解决方案,因为我必须重写大约 1k url,但不会有更多新的 url。

这里的问题是 urls 没有遵循清晰的结构并且不容易与新的 urls 相关...