php - permalink - Error con.htaccess y mod_rewrite
permalink wordpress (7)
¿Está seguro de que puede anular las opciones en su archivo .htaccess? Verifique el archivo de configuración principal de Apache para este
Estoy intentando alojar una aplicación basada en php con los siguientes valores de .htaccess.
Options +FollowSymLinks
Options -Indexes
DirectoryIndex index.php
RewriteEngine On
RewriteBase /easydeposit
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
Sin embargo, sigo enfrentando los siguientes dos errores,
[access_compat:error] [pid 25330:tid 27] AH01797: client denied by server configuration: /home/abc/opt/apache/htdocs/xyz/system/
[access_compat:error] [pid 25330:tid 27] AH01797: client denied by server configuration: /home/abc/opt/apache/htdocs/xyz/private/
[access_compat:error] [pid 25330:tid 27] AH01797: client denied by server configuration: /home/abc/opt/apache/htdocs/xyz/application/
[authz_core:error] [pid 25330:tid 27] AH01630: client denied by server configuration: /home/abc/opt/apache/htdocs/xyz/.htaccess
No estoy seguro de por qué sucede esto. Cualquier ayuda es apreciada.
¿Y está absolutamente seguro de que el usuario de apache (probablemente _www) tiene acceso al directorio ( /home/abc/opt/apache/htdocs/xyz/
)?
Dudo que esto tenga algo que ver con su archivo htaccess. Los errores son lanzados por mod_access_compat , que proporciona las directivas Allow
, Deny
, Order
y Satisfy
. En algún lugar, es probable que tenga su permiso y deny mal configurados. En cuanto al error de .htaccess al final, es de mod_authz_core , por lo que puede haber algo en sentido ascendente que bloquee el acceso a los archivos de .htaccess directamente.
Esta pregunta / respuesta me llevó a la http://httpd.apache.org/docs/2.4/upgrading.html por la que estoy agradecido, y lo siguiente fue lo que me lo resolvió.
Archivo .htaccess
anterior:
# password protection allowing multiple resources
AuthType Basic
AuthName "Restricted Area"
AuthUserFile C:/path/to/.htpasswd
AuthGroupFile /dev/null
Require valid-user
# allow public access to the following resources
SetEnvIf Request_URI "(path/to/public_files/.*)$" allow
# these lines must be updated
Order allow,deny
# Allowing an ip range:
Allow from 69.69.69
# Allowing another range:
Allow from 71.71.71
Satisfy any
Esta configuración estaba produciendo errores como:
[Thu Dec 08 10: 29: 20.347782 2016] [access_compat: error] [pid 2244: tid 15876] [client 93.93.93.93:49340] AH01797: cliente rechazado por la configuración del servidor: C: /path/to/index.php
actualizado para la configuración 2.4
# 7 lines unchanged...shown again for clarification
AuthType Basic
AuthName "Restricted Area"
AuthUserFile C:/path/to/.htpasswd
AuthGroupFile /dev/null
Require valid-user
SetEnvIf Request_URI "(path/to/public_files/.*)$" allow
# these are the changes replacing:
# Order allow,deny
# Allow from <range>
# Satisfy any
Require ip 69.69.69
Require ip 71.71.71
Require all granted
Otro ejemplo, reescribir desde:
www.yoursite.com/script.php?product=123
a
www.yoursite.com/cat/product/123/
utilizando
RewriteRule cat/(.*)/(.*)/$ /script.php?$1=$2
http://w3webtutorial.blogspot.com/2013/11/htaccess-and-modrewrite-in-your-php.html
Si recientemente ha actualizado a una versión de Apache mayor que la versión 2.2, el error de error authz_core podría provenir de su archivo httpd.conf o httpd-vhosts.conf en las etiquetas <Document>
. mod_authz_core se introdujo en Apache 2.3 y cambió la forma en que se declara el control de acceso.
Así, por ejemplo, en lugar de la forma 2.2 de configurar <Directory>
...
<Directory "C:/wamp">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Las directivas Order y Allow han sido reemplazadas por la directiva Require :
<Directory "C:/wamp">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Fuentes http://www.andrejfarkas.com/2012/06/fun-with-wamp-server-and-apache-2-4-2/ http://httpd.apache.org/docs/2.4/upgrading.html
Options +FollowSymLinks
Options -Indexes
en muchos hosting compartido el código anterior a menudo los principales problemas