Apache-2.2

Apache 將一些 url 重定向到首頁

  • March 4, 2016

我正在嘗試實現一個簡單的重寫,但看起來我做錯了什麼。我想要做的是我有一個網址blog.example.com/articles/給我 404 ,其他網址是blog.example.com/articles/abcblog.example.com/articles/xyz等,這工作正常,所以我希望blog.example.com/articles/向我顯示首頁是blog.example.com而不是 404,但我不想要任何其他 url,它有類似 /articles/* 的內容受到該規則的影響。

這是我迄今為止嘗試過的

RewriteRule ^/articles$ /index.php [R=302]

這不起作用

我也嘗試過重定向

Redirect "/articles" "http://blog.example.com/"

我可以工作,但它會更改瀏覽器中的 url,並且還會影響以/articles開頭的所有其他 url

任何幫助表示讚賞

您還可以使用 proxypass,在 apache 中啟用 mod_proxy。

a2enmod proxy
a2enmod proxy_http

然後允許您的伺服器使用 apache 作為代理

ProxyRequests On
ProxyVia On
<Proxy *>
     Order deny,allow
     Allow from xx.xx.xx.xx
</Proxy>

現在您可以編寫重寫規則如下

RewriteEngine On
RewriteRule /articles$ http://blog.example.com [P,L]

現在當 url 匹配blog.example.com/articles時,它會從blog.example.com中獲取結果,而不需要更改瀏覽器中的 url。它只會通過其他代理髮送 url blog.example.com/articles,url會受到影響。

引用自:https://serverfault.com/questions/761527