[Solved]-Run Django with URL prefix ("subdirectory") – App works, but URLs broken?


This is a possible duplicate of Django Apache Redirect Problem, as that answer solved this problem.

I only eventually stumbled on that answer by opening almost all of the ‘related questions’ here, just out of desperation. From my perspective, I think my question has some valuable “search friendly” words.

EDIT: The answer: (via alex vasi)

Things to try:

  1. Change current domain to “yourdomain.tld/cflow” in the “sites” framework. It’s easy to do using django admin or dumpdata/loaddata manage.py commands.
  2. Looks like your site is using login_required decorator. In that particular case you can add to settings.py:

    LOGIN_URL = ‘/[prefix]/accounts/login/’


In your urls.py rename urlpatterns to base_urlpatterns; then add the followinig definition at the end of the same file:

urlpatterns = patterns('',
    '^', include(base_urlpatterns), # iff you wish to maintain the un-prefixed URL's too
    '^your_prefix/', include(base_urlpatterns),

Leave a comment