Apache-2.2
ProxyHTMLURLMap 在 apache2.4 中不起作用
我在 ubuntu 14.04 上使用 apache2.4。而且我已經啟用了 mod_proxy_html。但是我的 URL 沒有被新的取代。我在 apache2.2 中做的同樣的事情,它工作得很好。這是我的虛擬主機文件。
<VirtualHost *:80> ServerAdmin webmaster@example.com ServerName www.example.com ServerAlias example.com DocumentRoot /var/www/html/www.example.com LogLevel error CustomLog /var/log/apache2/www.example.com_access.log combined ErrorLog /var/log/apache2/www.example.com_error.log #Proxy and cookies settings ProxyPreserveHost On ProxyPassReverse / http://www.example.com/example/control/ ProxyPassReverse / https://www.example.com/example/control/ ProxyPassReverse / /example/control/ ProxyPassReverseCookiePath /example / <Proxy balancer://cluster> BalancerMember ajp://10.14.78.45:8009 route=node01 keepalive=On loadfactor=1 ping=10 ttl=600 ProxySet timeout=60 stickysession=JSESSIONID nofailover=On </Proxy> RewriteEngine On #redirect non www domain to www domain RewriteCond %{HTTP_HOST} ^example.com$ [NC] RewriteRule ^(.*)$ http://www.example.com$1 [R=301,L] #Website RewriteRule ^/;(.*)$ balancer://cluster/example/control/main;$1 [P,L] RewriteRule ^/$ balancer://cluster/example/control/main [P,L] SetOutputFilter INFLATE;proxy-html;DEFLATE ProxyHTMLExtended Off ProxyHTMLInterp On ProxyHTMLDoctype XHTML Legacy LogLevel debug #Rewrite home page link ProxyHTMLURLMap ^(.*)/example/control/main;(.*)$ $1/;$2 [R] ProxyHTMLURLMap ^(.*)/example/control/main$ $1/ [R]
我猜 ProxyHTMLURLMap 在這裡不起作用。如果配置不正確,請告訴我。
謝謝
經過數小時的研究,我得到了簡單的解決方案,但運氣不佳。
proxy_html.conf 文件失去。我已將此文件從 apache2.2 複製到 /etc/apache/mods-available 並在 mods-enabled 中創建了指向該文件的連結。
vi /etc/apache2/mods-available
添加了這些行:
# Here's the declaration for W3C HTML 4.01 and XHTML 1.0 ProxyHTMLLinks a href ProxyHTMLLinks area href ProxyHTMLLinks link href ProxyHTMLLinks img src longdesc usemap ProxyHTMLLinks object classid codebase data usemap ProxyHTMLLinks q cite ProxyHTMLLinks blockquote cite ProxyHTMLLinks ins cite ProxyHTMLLinks del cite ProxyHTMLLinks form action ProxyHTMLLinks input src usemap ProxyHTMLLinks head profile ProxyHTMLLinks base href ProxyHTMLLinks script src for # To support scripting events (with ProxyHTMLExtended On), # you'll need to declare them too. ProxyHTMLEvents onclick ondblclick onmousedown onmouseup \ onmouseover onmousemove onmouseout onkeypress \ onkeydown onkeyup onfocus onblur onload \ onunload onsubmit onreset onselect onchange
在啟用了 mods 的情況下創建連結
ln -s /etc/apache2/mods-available/proxy_html.conf /etc/apache2/mods-enabled/
之後它完美執行