[Apache] Cómo establecer AllowOverride all


Answers

El objetivo principal de AllowOverride es que el administrador de los principales archivos de configuración de apache (el que se encuentra en / etc / apache2 / principalmente) decida qué parte de la configuración puede ser modificada dinámicamente por ruta por las aplicaciones.

Si no eres el administrador del servidor, dependes del Nivel AllowOverride que te permiten estos administradores. Para que puedan evitar que modifiques algunas configuraciones de seguridad importantes;

Si usted es el administrador de configuración maestro de apache, siempre debe usar AllowOverride None y transferir todos los ejemplos de google_based que encuentre, en función de los archivos .htaccess a las secciones del Directory en los archivos de configuración principal. Como contenido .htaccess para un archivo .htaccess en el directorio /my/path/to/a/directory es lo mismo que una instrucción <Directory /my/path/to/a/directory> , excepto que la dinámica .htaccess por HTTP la alteración de la configuración de la solicitud es algo que ralentiza su servidor web. Siempre prefiera una configuración estática sin comprobaciones de .htaccess (y también evitará los ataques de seguridad mediante las modificaciones de .htaccess ).

Por cierto, en su ejemplo usa <Directory> y esto siempre será incorrecto, las instrucciones de directorio siempre contienen una ruta, como <Directory /> o <Directory C:> o <Directory /my/path/to/a/directory> . Y, por supuesto, esto no se puede poner en un .htaccess ya que .htaccess es como una instrucción de directorio pero en un archivo presente en este directorio. Por supuesto, no puede modificar AllowOverride en .htaccess ya que esta instrucción está administrando el nivel de seguridad de los archivos .htaccess .

Question

Quiero establecer AllowOverride all Pero no sé cómo hacerlo. He encontrado el siguiente código buscando en google y pegándolo en .htaccess

<Directory>
        AllowOverride All
</Directory>

Pero después de pegarlo comencé a recibir "Internal Server Error"

¿Puede alguien ayudarme a dónde poner este código O cómo hacerlo?




Si está utilizando Linux, puede editar el código en el directorio de

/etc/httpd/conf/httpd.conf

Ahora aquí bien la línea de código un poco como

# 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>

Cambie AllowOveride None a AllowOveride All

Ahora ahora puede establecer cualquier tipo de regla en su archivo .httacess dentro de sus directorios si cualquier otro sistema operativo simplemente trata de encontrar el archivo de httpd.conf y editarlo.




También encuentro este problema, y ​​encontré la solución como 2 pasos a continuación: 1. En la carpeta habilitada para sitios de apache2, edite en Elemento de directorio estableciendo "Permitir omitir todo" (debe ser "todo" no "ninguno") 2. En el proyecto kohana en la carpeta www, cambie el nombre de "example.htaccess" a ".htaccess"

Lo hice en ubuntu. Espero que te ayude