我在ubuntu 14.04上使用apache2.4。 而且我已经启用了mod_proxy_html.But我的url并没有被一个新的取代。 我在apache2.2中也是这样做的,而且工作完美。 这是我的虚拟主机文件。
<VirtualHost *:80> ServerAdmin [email protected] 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不在这里工作。 请让我知道,如果东西没有正确configuration。
谢谢
经过数小时的研究,我得到了简单的解决scheme,运气不多
proxy_html.conf文件丢失。 我已经从apache2.2复制这个文件到/ etc / apache / mods-available,并且在启用了mods的链接中指向这个文件。
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-enabled中创build链接
ln -s /etc/apache2/mods-available/proxy_html.conf /etc/apache2/mods-enabled/
之后,它完美的工作