Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Issues in urls when running Django in subdirectory or say suburl

I am trying to run Django inside WordPress like WordPress at main url www.wptesting.com and Django at suburl www.wptesting.com/django . Django main root url Is working fine at www.wptesting.com/django but its suburl e.g., admin is not working as it should be www.wptesting.com/django/admin . However, whenever I tried to request admin url it goes converts into www.wptesting.comhttp%3a//wptesting.com/django/admin

I am running WordPress and Django with Apache and mod_wsgi , my conf file for apache is as follows :

<VirtualHost *:80>

WSGIScriptAlias /django /path_to_project/wsgi.py

ServerName wptesting.com
ServerAlias www.wptesting.com

DocumentRoot /var/www/html/wordpress

<Directory /var/www/html/wordpress/>
AllowOverride All
Order allow,deny

allow from all
#            Options Indexes FollowSymLinks
#            Require all granted
</Directory>


<Directory /path_to_project/>
            Options Indexes FollowSymLinks
            Require all granted
</Directory>


</VirtualHost>

I have asked one question earlier about configuring Django from subdirectory of WordPress with Apache and wsgi -> you can see the question here

Also If I tried to access any url which is not in Django project then it is giving the standard 404 not found error but when I try to access any valid url like admin it is giving the error mention above.

Edited : My Urls.py file :

from django.conf.urls import patterns, include, url
from django.contrib import admin
from django.views.generic import TemplateView

urlpatterns = patterns('',
    # Examples:
    # url(r'^$', 'dev_redis.views.home', name='home'),
    # url(r'^blog/', include('blog.urls')),

    url(r'^$',TemplateView.as_view(template_name='index.html')),
    url(r'^admin/', include(admin.site.urls)),

    url(r'^cache/', 'redis_app.views.redisTest'),

)
like image 937
Inforian Avatar asked Sep 04 '25 02:09

Inforian


1 Answers

That's the old format for urls.py. The current is this:

"""monero URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/3.0/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  path('', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  path('', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.urls import include, path
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path
from monero import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('/', views.py),
]

This is actually the file that is made when you make a new django project.

like image 139
Kovy Jacob Avatar answered Sep 07 '25 06:09

Kovy Jacob