La discusión WebFaction alguien señaló es correcta en cuanto a la configuración, solo tiene que aplicarlo usted mismo en lugar de a través de un panel de control.
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule (.*) http://www.example.com/$1 [R=301,L]
Coloque el archivo .htaccess, o en la configuración principal de Apache en el contexto apropiado. Si está dentro de un VirtualHost en la configuración principal de Apache, tendría ServerName ser www.example.com y ServerAlias ser example.com para asegurarse de que el host virtual maneja ambas solicitudes.
Si no tiene acceso a ninguna configuración de Apache, si es necesario, puede hacerlo utilizando un contenedor WSGI alrededor del punto de entrada de la aplicación Django WSGI. Algo así como:
import django.core.handlers.wsgi
_application = django.core.handlers.wsgi.WSGIHandler()
def application(environ, start_response):
if environ['HTTP_HOST'] != 'www.example.com':
start_response('301 Redirect', [('Location', 'http://www.example.com/'),])
return []
return _application(environ, start_response)
La fijación de este para incluir la URL dentro del sitio y tratar con https se deja como ejercicio para el lector. :-)
Qué le hace pensar. htaccess no funciona con Django? –
Lo probé. Pero la reescritura mod no es mi punto fuerte, por lo que es probable que haya estado mal. – Jake