Каким должен быть URL моего приложения Django

Я загрузил свое первое приложение Django под названием survey (работа в процессе), используя mod_wsgi с Apache на Ubuntu ВМ, но я не знаю, каким должен быть его URL. Моя ВМ была обнародована через proxyPass по адресу http://phaedrus.scss.tcd.ie/bias_experiment.

Работая над приложением локально, я просто http://127.0.0.1:8000/surveythree/ Исходя из моего urls.py (ниже), я подумал, что мне просто нужно перейти по http://phaedrus.scss.tcd.ie/bias_experiment/surveythree/ чтобы увидеть мое приложение Survey онлайн. Однако я не могу найти это...

Мой вопрос: какой URL я должен использовать, чтобы найти свое приложение для опросов на основе моих настроек ниже? Или я пропустил какой-то другой шаг в процессе?

Проект загружен, я перезапустил сервер, настроил его запуск с python manage.py runserver

Некоторые из URL, которые я пробовал

Ниже приведены мои настройки и то, что я пробовал до сих пор.

ПРИМЕЧАНИЕ: у меня есть проект Bias_Experiment Django, созданный в Pydev. Он содержит три приложения, содержащиеся в папке src.

  • опрос (мой рабочий проект)
  • опросы (учебник, которому я следовал)
  • bias_experiment (корневое приложение с моим файлом настроек и т. д.)

Мои шаблоны URL из bias_experiment / src / bias_experiment / urls.py

urlpatterns = patterns('',
    url(r'^polls/', include('polls.urls', namespace="polls")),
    url(r'^admin/', include(admin.site.urls)),        
    url(r'^surveythree/$', SurveyWizard.as_view([SurveyForm1, SurveyForm2, SurveyForm3, SurveyForm4, SurveyForm5])),   
)

Мой виртуальный хост расположен в / etc / apache2 / sites-available / bias_experiment

<VirtualHost *:80>
ServerAdmin myemail@gmail.com
ServerName phaedrus.scss.tcd.ie/bias_experiment
ServerAlias phaedrus.scss.tcd.ie
WSGIScriptAlias /bias_experiment /var/www/bias_experiment/src/bias_experiment/index.wsgi

Alias /static/ /var/www/bias_experiment/src/bias_experiment/static/
<Location "/static/">
    Options -Indexes
</Location >
</VirtualHost >

Мой файл WSGI находится по адресу /var/www/bias_experiment/src/bias_experiment/index.wsgi

import os
import sys
import site

# This is to add the src folder
sys.path.append('/var/www/bias_experiment/src/bias_experiment')

os.environ['DJANGO_SETTINGS_MODULE'] = 'bias_experiment.settings'

# Activate your virtual env
activate_env=os.path.expanduser("/var/www/bias_experiment/bin/activate_this.py")
execfile(activate_env, dict(__file__=activate_env))

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

Это структура проекта

У меня был предыдущий вопрос, связанный с этим, в котором мне было указано несколько проблем, которые я с тех пор исправил, поэтому я публикую это здесь. Я следовал за несколькими уроками в качестве деталей в этом вопросе.

Любая помощь с этим будет в огромной степени признательна.

Спасибо, зависит

РЕДАКТИРОВАТЬ: Мой журнал ошибок Apache: tail /var/log/apache2/error.log

(bias_experiment)spillab@kdeg-vm-18:/var/www/bias_experiment/src$ sudo su
root@kdeg-vm-18:/var/www/bias_experiment/src# tail /var/log/apache2/error.log
[Fri Jun 13 16:21:04 2014] [error] [client 134.226.38.233] File does not exist: /var/www/bias_experiment/surveythree, referer: https://stackru.com/questions/24209181/what-should-be-the-url-of-my-django-application/24209864?noredirect=1
[Fri Jun 13 16:22:36 2014] [error] [client 134.226.38.233] PHP Notice:  Use of undefined constant PHP_SELF - assumed 'PHP_SELF' in /var/www/bias_experiment/brendy.php on line 24, referer: http://phaedrus.scss.tcd.ie/bias_experiment/
[Fri Jun 13 16:22:36 2014] [error] [client 134.226.38.233] PHP Notice:  Undefined index: brendy in /var/www/bias_experiment/brendy.php on line 27, referer: http://phaedrus.scss.tcd.ie/bias_experiment/
[Fri Jun 13 16:22:36 2014] [error] [client 134.226.38.233] PHP Notice:  Use of undefined constant action - assumed 'action' in /var/www/bias_experiment/brendy.php on line 72, referer: http://phaedrus.scss.tcd.ie/bias_experiment/
[Fri Jun 13 16:22:36 2014] [error] [client 134.226.38.233] PHP Notice:  Undefined index: action in /var/www/bias_experiment/brendy.php on line 72, referer: http://phaedrus.scss.tcd.ie/bias_experiment/
[Fri Jun 13 16:22:36 2014] [error] [client 134.226.38.233] PHP Warning:  include(footer.php): failed to open stream: No such file or directory in /var/www/bias_experiment/brendy.php on line 118, referer: http://phaedrus.scss.tcd.ie/bias_experiment/
[Fri Jun 13 16:22:36 2014] [error] [client 134.226.38.233] PHP Warning:  include(): Failed opening 'footer.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/bias_experiment/brendy.php on line 118, referer: http://phaedrus.scss.tcd.ie/bias_experiment/
[Fri Jun 13 16:22:37 2014] [error] [client 134.226.38.233] File does not exist: /var/www/bias_experiment/special.css, referer: http://phaedrus.scss.tcd.ie/bias_experiment/brendy.php
[Fri Jun 13 16:22:37 2014] [error] [client 134.226.38.233] File does not exist: /var/www/bias_experiment/images, referer: http://phaedrus.scss.tcd.ie/bias_experiment/brendy.php
[Fri Jun 13 16:22:37 2014] [error] [client 134.226.38.233] File does not exist: /var/www/bias_experiment/images, referer: http://phaedrus.scss.tcd.ie/bias_experiment/brendy.php
root@kdeg-vm-18:/var/www/bias_experiment/src# 

3 ответа

Решение

URL должен быть http://phaedrus.scss.tcd.ie/bias_experiment/surveythree/

Я думаю, что есть одна маленькая ошибка в конфигурации Apache, которая может быть моей ошибкой (извините): вам нужен завершающий слеш, так что:

WSGIScriptAlias /bias_experiment/ /var/www/bias_experiment/src/bias_experiment/index.wsgi

Также обратите внимание, что вам не нужно запускать run.verserver manage.py, это бессмысленно, поскольку Apache обслуживает ваше приложение.

Это в вашей папке /static/?

http://phaedrus.scss.tcd.ie/bias_experiment/static/

Попробуйте с этими изменениями:

Apache conf:

WSGIApplicationGroup %{GLOBAL}
ServerName phaedrus.scss.tcd.ie
WSGIScriptAlias /bias_experiment/ /var/www/bias_experiment/src/bias_experiment/index.wsgi
WSGIDaemonProcess bias_experiment processes=4 threads=25 display-name=%{GROUP}
WSGIProcessGroup bias_experiment
WSGIPassAuthorization On

И вам нужно перезагрузить сервер Apache.

Другие вопросы по тегам