
Instalei o Cent Os 6.4 -Final Version e configurei o ambiente para desenvolvimento web PHP.
Meu aplicativo usa o .htaccess para reescrever URL e negar acesso direto aos arquivos.
meu arquivo de configuração do httpd - /etc/httpd/conf/httpd.conf como abaixo,
<Directory "/var/www/html">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride None
#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all
</Directory>
Quando eu mudei oPermitir substituir nenhumparaPermitir substituir tudo, ele pede autenticação. Então não funciona para mim e deu o erro abaixo,
This server could not verify that you are authorized to access the document requested.
Você forneceu as credenciais erradas (por exemplo, senha incorreta) ou seu navegador não sabe como fornecer as credenciais necessárias.
Meu .htaccess parece,
deny from all
Responder1
Com uma AllowOverride None
configuração no httpd.conf o arquivo .htaccess é completamente ignorado. Então você tem que mudar essa configuração.
Quando arquivos .htaccess são permitidos, o apache verificará cada diretório do DocumentRoot para baixo quanto à existência de um arquivo .htaccess E aplicará as configurações lá, antes de descer para o próximo diretório e o arquivo .htaccess lá.
Por exemplo, se ./www/.htaccess
estiver definido como "negar para todos", o visitante que tentar acessar /scripts/test/hello-world.php será rejeitado, apesar de ./www/scripts/test/.htaccess
possivelmente ter sido definido para "permitir para todos".
Portanto, se não são seus scripts PHP solicitando autenticação, você pode verificar os diretórios de nível superior em busca de arquivos .htaccess.