Я тестирую Django и хочу, чтобы он отвечал только на определенные приложения, например, admin и опросы (из учебника). В остальное время я хочу просто обычный апач. Я смог сделать это, используя переадресацию портов. В частности, я изменил httpd.conf быть:Django отвечает только на конкретные приложения
NameVirtualHost *:8081
и
<VirtualHost *:8081>
DocumentRoot /home/ec2-user/srv/mysite
ServerName <ServerIPAddress>
#ErrorLog /home/ec2-user/testproject/logs/apache_error.log
#CustomLog /home/djangotest/helloworld/logs/apache_access.log combined
WSGIScriptAlias//home/ec2-user/srv/mysite/apache/wsgi.py
etc...
Однако, я хочу, чтобы избавиться от 8081, и просто заставить его работать на порту по умолчанию 80? На данный момент оба mysite: 8081/polls/и mysite: 8081/admin/оба работают.
Вот файл WSGI в случае его необходимости:
import os
import sys
path= '/home/ec2-user/srv/mysite'
if path not in sys.path:
sys.path.append(path)
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
Edit: Вот urls.py из MySite (не поголовно).
from django.conf.urls import patterns, include, url
from django.conf import settings
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# Examples:
# url(r'^$', 'mysite.views.home', name='home'),
# url(r'^blog/', include('blog.urls')),
url(r'^polls/', include('polls.urls',namespace = "polls")),
url(r'^admin/', include(admin.site.urls)),
)
Вот urls.py для опросов:
from django.conf.urls import patterns, include, url
from polls import views
urlpatterns = patterns('',
#ex: /polls/
url(r'^$', views.index, name='index'),
#ex: /polls/5
url(r'^(?P<poll_id>\d+)/$', views.detail, name='detail'),
# ex: /polls/5/results/
url(r'^(?P<poll_id>\d+)/results/$', views.results, name='results'),
# ex: /polls/5/vote/
url(r'^(?P<poll_id>\d+)/vote/$', views.vote, name='vote'),
)
После внесения этого изменения оба сайта admin и polls - 404. Используемые мной URL-адреса:/опросы и /admin. Тем не менее, это 404 подается через Django. –
user1357015
Можете ли вы показать свои urls.py –
Я добавил соответствующий раздел, спасибо! – user1357015