He enviado mis archivos .htaccess a los servidores de producción, pero no funcionan. Sería un reinicio el siguiente paso, o debería comprobar algo más.¿Debe reiniciar Apache para que las reglas de reescritura en .htaccess tengan efecto?
Respuesta
Un reinicio es no se requiere para cambios en .htaccess. Algo más está mal.
Asegúrese de que su .htaccess incluye la declaración
RewriteEngine en
que se requiere incluso si es también presente en httpd.conf. También verifique que .htaccess sea legible mediante el proceso httpd.
Compruebe el error_log - le informará de cualquier error en .htaccess si está siendo utilizado. Poner un error de sintaxis intencional en .htaccess es una buena comprobación para asegurarse de que el archivo se está utilizando; debe obtener un error 500 en cualquier página del mismo directorio.
Por último, se puede habilitar un registro de reescritura utilizando comandos como el siguiente en su httpd.conf:
RewriteLog "logs/RewriteLog"
RewriteLogLevel 7
El archivo de registro así generada le dará el detalle sangriento de las reglas de reescritura que coinciden y cómo se manejaron.
No:
Apache permite la gestión descentralizada de configuración a través de ficheros especiales colocados en el interior del árbol web. Los archivos especiales son generalmente llamados
.htaccess
, pero cualquier nombre se pueden especificar en la directiva AccessFileName ... Puesto que los archivos .htaccess se leen en cada petición, los cambios realizados en estos archivos tienen efecto inmediato ...
¿Qué hay en tu .htaccess? RewriteRules? Verifique que mod_rewrite esté instalado y habilitado.
¿Otras cosas? Intente configurar AllowOverride en 'todo' en ese directorio.
solo si NO ha agregado el módulo de reescritura mod a apache.
que sólo tendrá que reiniciar apache si cambia los archivos .conf "Apache"
De la documentación de Apache: Por lo general, el problema es que AllowOverride no se establece de tal manera que sus directivas de configuración están siendo honrados. Asegúrese de que no tiene un AllowOverride None vigente para el alcance del archivo en cuestión. Una buena prueba para esto es colocar basura en su archivo .htaccess y volver a cargar. Si no se genera un error del servidor, es casi seguro que AllowOverride None esté en vigencia.
Quitando enlace a Apache - AllowOverride: http://httpd.apache.org/docs/2.2/mod/core.html#AllowOverride – scunliffe
Agrego esta línea "
Tengo el mismo problema y parece que la publicación de PiedPiper sobre AllowOverride fue de gran ayuda. Revise su archivo httpd.conf para "AllowOverride" y asegúrese de que esté configurado en All.
Publicación relevante: [Cómo configurar AllowOverride all] (http://stackoverflow.com/q/18740419/2065702) –
En caso de .htaccess, no es necesario reiniciar si no funciona, entre otras razones probables.
AllowOverride no se podrá formular las cuales el usuario puede configurar el interior httpd.conf o podría tener que ponerse en contacto con administrador del servidor.
Compruebe el nombre de archivo de .htaccess debe ser .htaccess no htaccess.txt vea here para la guía cómo crear uno.
Intente utilizar
Options -Indexes
odeny all
tipo de directiva simple para ver si funciona o no.borrar la caché del navegador cada vez que tenga una regla para redirecciones o similar si la redirección anterior está almacenada en la caché, parece como si las cosas no funcionaran.
- 1. Reglas de reescritura de Apache para redirigir todas las solicitudes al subdirectorio que contiene otras reglas .htaccess y reescritura
- 2. .htaccess Reglas de reescritura para el subdominio
- 3. reglas de reescritura htaccess con mod_GeoIP
- 4. problema de las reglas de reescritura de apache para páginas específicas
- 5. mod_rewrite - ¿Apache almacena en caché las reglas .htaccess? (sigue las reglas incluso después de eliminar el archivo .htaccess)
- 6. Permanente redirigir a través de reglas de reescritura de Apache
- 7. Reescritura de URL para diferentes protocolos en .htaccess
- 8. Cómo convertir archivos .htaccess de Apache en reglas de Lighttpd?
- 9. Reglas dinámicas de .htaccess
- 10. PHP Reglas de reescritura
- 11. Reglas de reescritura de sitios múltiples de WordPress en Nginx
- 12. ¿Cómo soluciono el problema de por qué apache no aplica las reglas de reescritura?
- 13. ¿Cuánto tardan los cambios de .htaccess en surtir efecto?
- 14. htaccess - reescritura condicional y vencimiento
- 15. Cómo configurar una reescritura en reglas Apache para redirigir todas las peticiones a menos que explícitamente permitido 404
- 16. ¿Cómo configuro las reglas de reescritura de nginx para que CakePHP funcione en CentOS?
- 17. htaccess reescritura sin redirección
- 18. reescritura htaccess en urls sin patrón común
- 19. Apache .htaccess vs httpd - ¿realmente importa?
- 20. .htaccess mod-reescritura de subdominio
- 21. reglas .htaccess EasyPHP
- 22. .htaccess no funciona apache
- 23. .htaccess reescritura rompe rutas relativas
- 24. Cómo depurar guión .htaccess reescritura
- 25. .htaccess: obtener las variables se pierden en la reescritura
- 26. Reescritura de URL en PHP sin htaccess
- 27. reescritura .htaccess pasar todas las cadenas de consulta a través
- 28. Reiniciar una aplicación Django que se ejecuta en Apache + mod_python
- 29. El parámetro con codificación URL rompe las reglas de reescritura Zend predeterminadas
- 30. Reescritura de Apache basada en el subdominio
Si ha agregado el nombre de usuario a 'Requerir usuario' en su archivo habilitado para sitios he encontrado empíricamente que necesita reiniciar. Un agraciado lo hace. – Ross