Recentemente, tentei configurar um servidor de teste com o Apache. O site deve ser executado no domínio www.mytest.com
. Eu sempre recebo um 403 Forbidden
erro. Estou no Ubuntu 10.10 server edition. A raiz do documento está sob dir /var/www
. A seguir estão as minhas configurações:
Conteúdo de / var / www
ls -l /var/www/
total 12
drwxr-xr-x 2 root root 4096 2011-08-04 11:26 mytest.com
-rwxr-xr-x 1 root root 177 2011-07-25 16:10 index.html
Conteúdo do arquivo host no servidor (com IP 192.168.2.5)
cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 americano
192.168.2.5 americano.mytest.com www.mytest.com
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
Configuração do site
<VirtualHost *>
ServerAdmin [email protected]
ServerName www.mytest.com
ServerAlias mytest.com
DocumentRoot "/var/www/mytest.com"
ErrorLog /var/log/apache2/mytest-error_log
CustomLog /var/log/apache2/mytest-access_log combined
#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "/var/www/mytest.com">
Options -Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Não tenho nenhum .htaccess
arquivo na raiz do meu documento. As permissões estão definidas corretamente (legíveis por www-data).
Se eu digitar o endereço IP da minha área de trabalho, o site será exibido corretamente. Alterei o arquivo hosts na minha área de trabalho para apontar www.mytest.com
para o IP do servidor. Quando eu uso, eu entendo 403
. Como muitas funções deste site são sensíveis ao nome de site, eu tenho que poder acessar o site pelo nome de domínio.
Outra coisa interessante é que, mesmo que todos os arquivos de log sejam criados corretamente, eles não têm informações sobre esse erro.
Estou preso. Alguém pode ajudar?
fonte
sudo sh -c ". /etc/apache2/envvars; apache2 -S"
(lista de Virtualhosts) e:sudo sh -c ". /etc/apache2/envvars; grep -R Listen /etc/apache2/*|grep -v \"#\"; grep -R NameVirtual /etc/apache2/*|grep -v \"#\""
VirtualHost configuration: 192.168.2.5:* www.mytest.com (/etc/apache2/sites-enabled/mytest.com:1) Syntax OK
O segundo retorna:/etc/apache2/ports.conf:Listen 80 /etc/apache2/ports.conf: Listen 443 /etc/apache2/ports.conf: Listen 443 /etc/apache2/conf.d/virtual.conf:NameVirtualHost *
Respostas:
O Apache 2.4.3 (ou talvez um pouco antes) adicionou um novo recurso de segurança que geralmente resulta nesse erro. Você também veria uma mensagem de log do formulário "cliente negado pela configuração do servidor". O recurso está exigindo uma identidade de usuário para acessar um diretório. É ativado por DEFAULT no httpd.conf que acompanha o Apache. Você pode ver a ativação do recurso com a diretiva
Basicamente, isso significa negar acesso a todos os usuários. Para corrigir esse problema, remova a diretiva negada (ou muito melhor) adicione a seguinte diretiva aos diretórios aos quais você deseja conceder acesso:
como em
fonte
/etc/apache2/apache2.conf
e ajudou, obrigado!apache/conf/extra
dentro/etc/apache2
Para o apache Ubuntu 2.4.7, finalmente achei que você precisava listar seu host virtual em apache2.conf
fonte
Isso pode ser um problema de permissão.
de acordo com esta página sobre erros do Apache 403.
Como você está usando
Allow from all
, seu pedido não deve importar, mas você pode tentar alterá-loDeny,Allow
para definir o comportamento padrão como "permitindo".fonte
Mova a cláusula Directory para fora do host virtual e coloque-a antes de declarar o host virtual.
Também me deixou louco por muito tempo. Não sei porque. É uma coisa do Debian.
fonte
Eu estava tendo o mesmo problema com um host virtual no Ubuntu 14.04
Para mim, a seguinte solução funcionou:
http://ubuntuforums.org/showthread.php?t=2185282
É só adicionar uma
<Directory >
tag ao/etc/apache2/apache2.conf
fonte
Se você fez tudo certo, basta dar o diretório inicial de permissões como:
então
fonte
O problema era que a permissão de acesso ao arquivo estava errada.
Mudei as permissões do diretório e funcionou.
fonte
Também tive esse problema no Arch Linux ... me custa algum tempo, mas estou feliz agora que encontrei o meu erro:
Meu diretório com os
.html
arquivos na minha conta.Eu configurei tudo,
r+x
mas ainda recebi o403
erro.Depois voltei completamente e tentei configurar o diretório home para executar o que resolveu o meu problema.
fonte
Passei várias horas nesse problema estúpido
Primeiro, altere as permissões usando isso no terminal
Eu não sei qual é a diferença entre 664 e 775 Eu fiz ambos os 775 como este Também o htdocs precisa do caminho do diretório, por exemplo, para mim foi
Essa é a outra coisa idiota também
verifique se o link src da imagem é o seu nome de domínio, por exemplo
Certifique-se de ter
Você edita aqueles que usam pico no terminal
Também criei um diretório para imagens especificamente, para que, quando você digitar na barra de endereço do domínio domainname.com/images, obtenha uma lista de fotos que podem ser baixadas e que precisam ser baixadas com sucesso para indicar que os arquivos de imagem estão funcionando corretamente
E essas são as soluções que tentei, agora tenho imagens em funcionamento ... sim !!!
Para o próximo problema (s)
fonte