Permitindo o acesso do Apache 2.4 ao espaço de trabalho

0

Estou executando o Apache 2.4.6 no openSUSE 13.1 e quero fazer um pequeno desenvolvimento web, principalmente scripts PHP. Portanto, eu instalei eclipse mars para desenvolvedores de php. Arquivos HTML e php Eu coloquei no diretório correto como apontado por este instruções, ou seja, /srv/www/htdocs/ são de fato processo e corretamente , por exemplo Se eu colocar newfile.php nessa pasta, recebo a saída correta em localhost/newfile.php . Agora, o problema é que o servidor não pode acessar arquivos no espaço de trabalho. Eu tentei várias abordagens até agora:

  1. Ligação simbólica de /srv/www/htdocs/ a /path/to/workspace/ . Isso alterou a saída do servidor de "404 Objeto não encontrado" para "403 Acesso negado", embora eu tenha fornecido acesso completo a partir de / .

  2. Dando acesso ao diretório editando o httpd.conf, como

    <Directory "/path/to/workspace/">
        Require all granted
    <Directory>
    
  3. Configurando o servidor no Eclipse usando o pathmapping.

  4. Colocando uma nova área de trabalho em /srv/www/htdocs/ . Mas já quando eu quero acessar um arquivo em localhost/workspace/file.php recebo "404 Objeto não encontrado"

Ainda nada mostrou o efeito desejado. Como eu só preciso do acesso para fins de desenvolvimento e a rede é protegida de fora, mesmo soluções alternativas seriam razoavelmente aceitáveis para mim, embora uma maneira mais correta de fazê-lo, é claro, fosse preferível.

Editar: Solução

O problema que causou o problema foi tão simples quanto fatal. O firewall do openSUSE bloqueou a porta 80. Agora a solução com a transferência da área de trabalho do eclipse para /srv/www/htdocs/ está funcionando.

    
por Jarno 09.03.2016 / 12:36

1 resposta

0

A maneira correta de fazer o que você quer é quase sempre usar algum tipo de estágio de implantação.

Para uma configuração puramente interna ou experimental, isso pode ser algo tão simples quanto um script que executa rsync -a --delete ./* /srv/www/htdocs . (Especificar os arquivos de origem usando ./* reduz o risco de nomes de arquivos incomuns causando problemas durante o processo de cópia.)

Você pode, se necessário, alterar o script de implantação para fazer outras alterações, como: fazer as alterações aplicáveis nos arquivos de configuração, definir propriedade e permissões em arquivos e diretórios, excluir itens que não deveriam estar disponíveis para o servidor web ( .gitignore anyone?), etc.

Desta forma, o servidor web pode ser configurado sem qualquer consideração específica pelas necessidades do lado do desenvolvimento. Deixe o Eclipse ter as coisas do seu jeito, e deixe o Apache ter as coisas do seu jeito.

Não deve ser muito difícil configurar o Eclipse para executar esse script ao "construir" o software, se você quiser um fluxo de trabalho de solução única.

    
por 09.03.2016 / 14:28