2012-01-03 22 views
30

Estoy migrando un sitio web de un servidor que tiene un servidor web Apache a otro servidor que está ejecutando el servidor web Nginx, y quería convertir los archivos .htaccess, el problema no es sólo la sintaxis, sino también el nombre del archivo, es también " .htaccess" o qué?Cambiar el archivo .htaccess de Apache para ser utilizado con Nginx

+0

Sobre la base de la demanda popular, empecé un nginx .htaccess-para-Lua-plugin: https://github.com/e404/htaccess -for-nginx – Gerald

Respuesta

31

Aquí es una herramienta que utilizo:

http://www.anilcetin.com/convert-apache-htaccess-to-nginx/

No es fiable al 100%, pero es bastante buena base

Además, aquí hay un enlace sobre la conversión de las reglas:

http://nginx.org/en/docs/http/converting_rewrite_rules.html

Éste puede ayudar un poco:

http://wiki.nginx.org/HttpRewriteModule#rewrite

EDIT:

El nombre del archivo debe ser nginx.conf

+4

y el archivo se llama ".htaccess" también? –

+1

gracias por su respuesta rápida, pero también quería saber si el nombre del archivo también debería ser ".htaccess" u otra cosa. –

+6

será nginx.conf el archivo, he aquí un ejemplo: http://brainspl.at/nginx.conf.txt pero tal vez todavía se puede utilizar el .htaccess y decirle al servidor que utilice esto, pero debido a que el "código" si diferente Yo recomendaría no utilizar .htaccess para evitar confusiones –

17

Nginx no tiene soporte para archivos .htaccess.

Pero .htaccess archivos son malos. Es una forma de colocar partes de la configuración de Apache en cualquier parte del sistema de archivos y decirle a apache que verifique el sistema de archivos en cada solicitud para ver si no tiene alguna configuración especial en su lugar. El único uso real del archivo .htaccess es delegar una pequeña parte de la configuración para el usuario si usted es un proveedor de alojamiento y quería permitir una cierta configuración del servidor web para sus usuarios.

configuración Nginx se compila cuando nginx reinicio. Por supuesto, puede incluir varios archivos que puede colocar en su directorio web si realmente no le importan los problemas de divulgación de información (como los usuarios que verán su configuración de servidor web), pero teniendo lo mismo que .htaccess, lea cada vez que solicite está hecho, no está en la forma nginx.

http://wiki.nginx.org/LikeApache-htaccess:

No se puede hacer esto. No deberias. Si necesita .htaccess, probablemente lo esté haciendo mal.

+17

No es una buena respuesta; si está utilizando un alojamiento compartido (por ejemplo, un blog de Wordpress), usted es solo un cliente; no puedes recompilar nginx. Sí, la configuración por directorio no es una gran idea, pero cuando estás al final de la cadena alimenticia, no siempre es posible ser quisquilloso. –

+2

@PeterFlynn es un hecho, no escribí la documentación de Nginx, y no tendrá soporte por directorio, quizás incluya un archivo de configuración de un servidor o alcance de ubicación, pero eso puede bloquear el proceso de Nginx, por lo que el host puede evitar eso. Parece que Nginx no está hecho para tales tareas, eso es todo. Y si coloca un archivo .htaccess allí, Nginx no lo leerá. – regilero

Cuestiones relacionadas