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.
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
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.
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.
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
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: