Erro interno do servidor no user_directory

0

Hoje estou tentando instalar o httpd e o mysql no meu fedora 14 PC. Isso funciona bem. Depois disso, tento criar uma pasta public_html no diretório do usuário e permitir que o php acesse essa pasta. Para isso eu sou seguindo este link . Agora, quando tento acessar essa pasta, ela mostra forbidden message no meu navegador. Para evitar isso, pesquisei no Google o meu problema que me deu este link . Quando tento setsebool -P httpd_enable_homedirs=1
Agora meu navegador mostra Internal server error .

Meu LOG DE ERRO

    [Tue Apr 01 09:01:28 2014] [notice] SELinux policy enabled; httpd running as context system_u:system_r:httpd_t:s0
[Tue Apr 01 09:01:28 2014] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Tue Apr 01 09:01:28 2014] [notice] Digest: generating secret for digest authentication ...
[Tue Apr 01 09:01:28 2014] [notice] Digest: done
[Tue Apr 01 09:01:30 2014] [notice] Apache/2.2.17 (Unix) DAV/2 PHP/5.3.8 configured -- resuming normal operations
[Tue Apr 01 09:08:45 2014] [crit] [client 127.0.0.1] configuration error:  couldn't perform authentication. AuthType not set!: /~BON4/
[Tue Apr 01 09:08:52 2014] [crit] [client 127.0.0.1] configuration error:  couldn't perform authentication. AuthType not set!: /~BON4/HH.php
[Tue Apr 01 09:08:52 2014] [error] [client 127.0.0.1] File does not exist: /var/www/html/favicon.ico
    
por Lal krishnan 18.03.2014 / 10:14

4 respostas

1

Coloque algum conteúdo (como index.php ou index.html) no diretório public_html de acordo com sua configuração do servidor.E sim, seria útil se você fornecesse logs de erro.

    
por 19.03.2014 / 10:46
1

Tente

<Directory />

   Options FollowSymLinks
   AuthType None
   AllowOverride None
   Order deny,allow
   Deny from all
</Directory>

<Directory "/opt/your_folder/*">

   Options FollowSymLinks MultiViews
   AllowOverride None
   AuthType None
   Order deny,allow
   Allow from all
</Directory>

Parece ser um erro de permissão com a pasta que você criou no diretório da web.

    
por 01.04.2014 / 07:14
0

O link que você seguiu especificado para ambas as versões 2.2 e 2.4; Eu suspeito que você precisa remover Require all granted de /etc/httpd/conf.d/userdir.conf quando o Fedora 14 vem com o Apache 2.2.

Eu também recomendaria a leitura do link para uma melhor visão geral do mod_userdir no apache 2.2

    
por 07.04.2014 / 04:08
-1

O site que você deseja executar deve ser o mesmo que foi mencionado no seu link (usando o selinux e em / home / user / public_html). Não é esse o caso, por favor desative o selinux e tente colocar algum conteúdo em / var / www / html e também comente o módulo userdir. E se você quiser configurá-lo no / home / user / public_html, por favor, considere a entrada vhosts (virtualhost) no seu arquivo httpd.conf. Como no caso do selinux habilitado, você precisa fazer políticas sobre o que permitir e o que não.

Configuração do Vhost:

Como as permissões padrão só nos permitem, o usuário 'demo', navegar em nossa pasta pessoal, vamos começar dando acesso ao Apache para esta pasta também:

chmod 755 / home / demo

OK, agora precisamos criar a estrutura de diretórios para nossos sites.

No seu diretório pessoal, crie uma pasta 'public_html':

cd ~ mkdir public_html

Agora, para cada domínio que queremos hospedar, crie uma pasta com um conjunto padrão de subpastas:

mkdir -p public_html / domain1.com / {público, privado, log, cgi-bin, backup}

Isso criará as pastas public, private, log, cgi-bin e backup para cada um de nossos domínios (domain1.com).

index.html

O conteúdo da pasta pública é, inteiramente, com você, mas para este exemplo, vou usar um arquivo HTML muito simples para que possamos verificar se os hosts virtuais funcionam corretamente:

Para cada domínio, vamos criar o arquivo index.html:

vi public_html / domain1.com / public / index.html

Vamos prosseguir e descomentar o NameVirtualHost genérico na configuração do Apache.

Navegue até o diretório / etc / httpd / conf e abra o arquivo de configuração principal do Apache (httpd.conf):

sudo vi httpd.conf

Agora podemos reiniciar o Apache para iniciar as alterações:

sudo /etc/init.d/httpd restart

Hosts virtuais personalizados

Nós configuramos o básico e agora estamos prontos para adicionar nossos próprios hosts virtuais para que possamos começar a servir nossos domínios.

Vamos criar o vhost para o domínio1:

sudo vi /etc/httpd/conf/httpd.conf

Na parte inferior do arquivo httpd.conf, precisamos adicionar o seguinte:

# E-mail do administrador, Nome do servidor (nome do domínio) e quaisquer aliases   ServerAdmin [email protected]   NomeServidor domínio1.com   ServerAlias www.domain1.com

# Document Root (onde os arquivos públicos estão localizados)     DocumentRoot /home/demo/public_html/domain1.com/public     # Locais de arquivos de log personalizados   LogLevel avisar   ErrorLog /home/demo/public_html/domain1.com/log/error.log   CustomLog /home/demo/public_html/domain1.com/log/access.log combinado

OK, agora precisamos recarregar o Apache:

sudo /etc/init.d/httpd recarregar

Agora navegue até seu site:

    
por 19.03.2014 / 11:24