Problema com permissões ao sincronizar com o diretório de sites

2

Existe uma maneira de vincular simbolicamente um diretório usando ln ao meu diretório ~ / Sites / no OS X para que as permissões estejam corretas, para que possam ser visualizadas em um navegador da Web quando estou desenvolvendo web em um máquina local?

Isso é o que eu fiz ln -s ~/code/web/yolkportfolio ~/Sites/yolkportfolio Eu então chmod 755 no diretório, mas ainda não é legível.

Qualquer ajuda seria muito apreciada.

    
por yolk 22.08.2011 / 19:14

2 respostas

2

O problema foi com a configuração do meu apache. Aqui está o que permitiu que funcionasse, apenas a regra FollowSymLinks .

<Directory "/Users/Joe/Sites/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
    
por 01.09.2011 / 21:11
0

Você tem algumas opções:

1. Se você está executando apache com um usuário diferente (não o seu) e deseja definitivamente que DocumentRoot aponte para algum diretório dentro de sua casa, você deve alterar as permissões para seu diretório inicial (os padrões devem ser 750 ou 700 ) para 755

Eu só recomendaria isso se este for seu laptop ou seu computador pessoal e ninguém mais tiver acesso a ele.

2. O primeiro não é uma opção, mas você ainda quer o DocumentRoot dentro de sua casa, então você pode alterar o usuário que executa apache . Edite seu arquivo de configuração e procure as diretivas User e Group .

3. O segundo ainda não é uma opção, e ainda ... você quer coisas dentro de sua casa. Use o mod_userdir do apache. Com a seguinte configuração:

<IfModule mod_userdir.c>
        UserDir public_html
        UserDir disabled root

        <Directory /home/*/public_html>
                AllowOverride FileInfo AuthConfig Limit Indexes
                Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
                <Limit GET POST OPTIONS>
                        Order allow,deny
                        Allow from all
                </Limit>
                <LimitExcept GET POST OPTIONS>
                        Order deny,allow
                        Deny from all
                </LimitExcept>
        </Directory>
</IfModule>

Esta é a configuração padrão para o mod_userdir do Apache no Debian. Você poderá acessar:

/home/your-username/public_html/*

no seu navegador, no seguinte endereço:

http://somewhere/your-username/*

4. Por fim, você pode colocar DocumentRoot em outro local ( /srv/www , /opt/www ou qualquer outra coisa) e configurar permissões conforme necessário.

    
por 22.08.2011 / 19:41