Apache ProxyPass Imagens ausentes

6

Eu tenho um servidor apache que fica na frente do meu servidor glassfish. mydomain.com vai diretamente para meus arquivos estáticos no apache, do que se você acessasse o subdomínio forum.mydomain.com, ele acessaria o fórum webapp glassfish / em 127.0.0.1:8080/forum/. Este proxy parece funcionar, leva-me ao aplicativo da web, mas todas as imagens estão faltando! Aqui está como eu vou minha configuração de host virtual.

NameVirtualHost *:80

<VirtualHost *:80>
    ServerName www.mydomain.com
    ServerAlias subdomain.mydomain.com mydomain.com
    DocumentRoot "/usr/local/apache/htdocs"

</VirtualHost>


<VirtualHost *:80>
    ServerName forum.mydomain.com
    # any logging config, etc, that you need
    ProxyPass / http://127.0.0.1:8080/forum/
    ProxyPassReverse / http://127.0.0.1:8080/forum/
</VirtualHost>

E no log de acesso, é isso que estou vendo.

[15/Jan/2012:03:28:02 +0000] "GET /forums/list.page HTTP/1.1" 200 12861
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/logo.jpg HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/styles/style.css?1326582403934 HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/icon_mini_recentTopics.gif HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/icon_mini_search.gif HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/icon_mini_members.gif HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/styles/en_US.css?1326582403934 HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/icon_mini_groups.gif HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/folder_big.gif HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/icon_mini_login.gif HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/whosonline.gif HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/icon_mini_register.gif HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/ping_session.jsp HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/folder_lock.gif HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/folder.gif HTTP/1.1" 404 1075
[15/Jan/2012:03:28:02 +0000] "GET /forum/templates/default/images/folder_new.gif HTTP/1.1" 404 1075

Alguma idéia de por que as imagens não estão funcionando?

    
por EpicOfChaos 15.01.2012 / 04:38

3 respostas

7

O código para o fórum tem o /forum/ path codificado no HTML que está enviando para o cliente ou definido em algum lugar em sua configuração. Se você puder alterá-lo para / , faça isso; Caso contrário, você pode contornar isso em sua configuração do Apache:

<VirtualHost *:80>
    ServerName forum.mydomain.com
    ProxyPass /forum/ http://127.0.0.1:8080/forum/
    ProxyPassReverse /forum/ http://127.0.0.1:8080/forum/
    ProxyPass / http://127.0.0.1:8080/forum/
    ProxyPassReverse / http://127.0.0.1:8080/forum/
</VirtualHost>
    
por 15.01.2012 / 04:48
2

Você pode consertá-lo, colocando o mecanismo de reescrita no virtualhost.

RewriteEngine on
RewriteRule ^/forum/(images|javascripts|stylesheets)(.*) /forum/$1$2

Para mais detalhes, consulte aqui para o mecanismo de reescrita

    
por 15.01.2012 / 04:55
0

Com base na resposta @Mughil, criei abaixo para me ajudar a usá-lo em todos os sites.

RewriteEngine on
RewriteRule ^/(.*)/(images|javascripts|stylesheets)(.*) /$1/$2$3
    
por 02.07.2013 / 11:52