Folhas de estilo JSF ausentes com nginx

1

Desenvolvi um aplicativo JSF simples, usando o Glassfish4 como servidor de aplicativos. Atualmente, tem apenas uma página com as coisas de administração. Quando eu executo isso em localhost tudo parece estar no lugar. Mas eu gostaria de colocá-lo em um servidor remoto. Eu criei essa configuração nginx:

server {
    listen 80;
    server_name my.domain.name;

    location /jsf {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_set_header X-NginX-Proxy true;
            proxy_pass http://0.0.0.0:8080/application;
            proxy_redirect off;
    }
}

E posso abrir a página, mas falta a folha de estilo. Ele tenta abrir o link link mas lança um erro 404.

No host local, o link é o seguinte: link

EDITAR: O log de erros do nginx contém linhas como esta:

2015/07/06 12:58:47 [error] 19916#0: *45 open()
"/usr/share/nginx/html/application/javax.faces.resource/primefaces.js.xhtml;jsessionid=372868209460c2f4d378fac3b8f7"
failed (2: No such file or directory), 
client: [my_IP], server: my.domain.name,
request: "GET /application/javax.faces.resource/primefaces.js.xhtml;jsessionid=372868209460c2f4d378fac3b8f7?ln=primefaces&v=5.2 HTTP/1.1",
host: "my.domain.name",
referrer: "http://my.domain.name/jsf/index.xhtml"

No log do Glassfish, tenho a seguinte exceção:

com.sun.faces.context.FacesFileNotFoundException: /application/javax.faces.resource/theme.css.xhtml Not Found in ExternalContext as a Resource

Então descobri que o JSF tenta encontrar os recursos no / application (que é a Raiz de Contexto do aplicativo jsf), mas o nginx usa / jsf na diretiva location. Então talvez isso signifique que eu deveria usar o mesmo nome para ambos ...

    
por Rothens 06.07.2015 / 14:49

0 respostas

Tags