Link suave para o site

3

Eu tenho o Nginx instalado no Ubuntu e tenho o próximo arquivo de configuração:

server {
    root /www/test;
    index index.html index.htm;

    server_name .dev.mysite.info;

Eu tenho arquivos HTML no diretório / www / test e tudo funciona bem.

Agora quero alterar minha pasta para o link macio:

lrwxrwxrwx  1 root root   33 Jun 17 10:39 test -> /root/Dropbox/digital_ocean/test/

Mas receba a mensagem de erro no navegador:

"500 Internal Server Error"

Por que e como posso corrigir isso?

Atualização:

root@ocean:/var/log/nginx# cat error.log 
2013/06/17 11:40:27 [crit] 26197#0: *1 stat() "/www/test/" failed (13: Permission denied), client: 195.239.188.28, server: dev.meditat0r.info, request: "GET / HTTP/1.1", host: "meditat0r.info"
2013/06/17 11:40:27 [crit] 26197#0: *1 stat() "/www/test/" failed (13: Permission denied), client: 195.239.188.28, server: dev.meditat0r.info, request: "GET / HTTP/1.1", host: "meditat0r.info"
2013/06/17 11:40:27 [crit] 26197#0: *1 stat() "/www/test/index.html" failed (13: Permission denied), client: 195.239.188.28, server: dev.meditat0r.info, request: "GET / HTTP/1.1", host: "meditat0r.info"
2013/06/17 11:40:27 [crit] 26197#0: *1 stat() "/www/test/index.html" failed (13: Permission denied), client: 195.239.188.28, server: dev.meditat0r.info, request: "GET / HTTP/1.1", host: "meditat0r.info"
...
2013/06/17 11:40:27 [error] 26197#0: *1 rewrite or internal redirection cycle while internally redirecting to "/index.html", client: 195.239.188.28, server: dev.meditat0r.info, request: "GET / HTTP/1.1", host: "meditat0r.info"
    
por demas 17.06.2013 / 12:47

3 respostas

2

A permissão padrão básica para a pasta raiz é rwx -----, portanto, ninguém, exceto o root, pode ler / gravar a partir dela. Você pode:

a) Mova sua pasta dropbox para outro local (maneira preferível: crie um usuário não-root separado)

b) altere as permissões para / pasta raiz (nunca faça isso!)

    
por 17.06.2013 / 13:53
2

O problema é como os links simbólicos funcionam. Um link simbólico é basicamente um letreiro dizendo "o conteúdo que você está procurando não está aqui, você precisa procurar /root/Dropbox/digital_ocean/test/ ". E isso significa que o diretório /root/Dropbox/digital_ocean/test/ deve ser a) acessível com os mesmos direitos do sistema de arquivos que o diretório da web eb) que o servidor da Web precisa ser configurado para permitir o acesso a esse diretório. Não sou especialista em nginx, mas acredito que você precisará de uma diretiva Location para /root/Dropbox/digital_ocean/test/ .

    
por 17.06.2013 / 13:48
0

Verifique seus arquivos de configuração, a seguinte opção pode ser relevante.

diable_symlinks

link

    
por 17.06.2013 / 12:51

Tags