我有一個WordPress網站,我需要重寫某些頁面的URL以顯示它們來自特定的子域以匹配已經存在的打印件。我正在嘗試通過htaccess和mod_proxy來做到這一點,並越來越接近,但需要一些幫助。使用mod_proxy重寫顯示給用戶的URL
下面是代碼我現在有這在一定程度作品:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^subdomain\.domain\.edu$ [NC]
RewriteRule^http://othersubdomain.domain.edu/folder1/folder2/folder3%{REQUEST_URI} [L,P]
如果我在subdomain.domain.edu型,我得到正確的頁面(這是坐在http://othersubdomain.domain.edu/folder1/folder2/folder3)和瀏覽器的網址保持寫作爲subdomain.domain.edu。這很好用!
問題出在內頁。例如,如果我鍵入subdomain.domain.edu/contact,我會將其重定向到正確的頁面,但URL不會保留重寫,它會顯示其提供位置的完整URL。
有人可以幫我改寫內頁的URL嗎?我感覺我好親近!
'ProxyPassReverse'在htaccess文件中不起作用,它只在代理響應是重定向時才重寫'Location:'標頭。它不會對頁面內容中的鏈接做任何事情。 –
@JonLin - 請參閱第二段 - 我建議首先使用mod_proxy +推薦mod_proxy_html來處理頁面內容中的鏈接。任何可以在.htaccess文件中完成的事情都可以移動到服務器,虛擬主機或目錄配置中。 – Chandranshu
對不起,但我主要是一個IIS和.NET的傢伙。你對我應該添加的語法有何建議? Apache的整個世界讓我非常困惑。再次感謝任何幫助。 – user2994930