Невозможно получить веб-страницу на питоне нигде (сайт хостинга)

Я пытаюсь получить базовую веб-страницу в Python Anywhere. Я не могу просмотреть "домашнюю" страницу.

Я настроил файл WSGI в соответствии с инструкциями, и сайт отлично работает на моем компьютере с Linux.

Пожалуйста помоги!

Вот мой wsgi.py файл:

 # +++++++++++ DJANGO +++++++++++
 import os
 import sys

## assuming your Django settings file is at '/home/my_username/projects/my_project         /settings.py'
path = '/home/mickpc/solar_update'
if path not in sys.path:
    sys.path.append(path)

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

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

Вот начало кода ошибки:

2014-12-10 03:29:04,746 :Traceback (most recent call last):
2014-12-10 03:29:04,746 :  File "/bin/user_wsgi_wrapper.py", line 130, in __call__
2014-12-10 03:29:04,747 :    self.error_log_file.logger.exception("Error running WSGI     application")
2014-12-10 03:29:04,747 :  File "/usr/lib/python2.7/logging/__init__.py", line 1185, in     exception
2014-12-10 03:29:04,747 :    self.error(msg, *args, **kwargs)
2014-12-10 03:29:04,747 :  File "/usr/lib/python2.7/logging/__init__.py", line 1178, in     error
2014-12-10 03:29:04,747 :    self._log(ERROR, msg, args, **kwargs)
2014-12-10 03:29:04,747 :  File "/usr/lib/python2.7/logging/__init__.py", line 1270, in     _log
2014-12-10 03:29:04,747 :    record = self.makeRecord(self.name, level, fn, lno, msg,     args, exc_info, func, extra)
2014-12-10 03:29:04,748 :  File "/usr/lib/python2.7/logging/__init__.py", line 1244, in     makeRecord
2014-12-10 03:29:04,748 :    rv = LogRecord(name, level, fn, lno, msg, args, exc_info,     func)
2014-12-10 03:29:04,748 :  File "/usr/lib/python2.7/logging/__init__.py", line 284, in     __init__
2014-12-10 03:29:04,748 :    self.threadName = threading.current_thread().name
2014-12-10 03:29:04,748 :  File "/usr/lib/python2.7/threading.py", line 1160, in      currentThread
2014-12-10 03:29:04,748 :    return _active[_get_ident()]
2014-12-10 03:29:04,749 :  File "/bin/user_wsgi_wrapper.py", line 122, in __call__
2014-12-10 03:29:04,749 :    app_iterator = self.app(environ, start_response)
2014-12-10 03:29:04,749 :  File "/usr/local/lib/python2.7/dist-packages/django     /core/handlers/wsgi.py", line 250, in __call__
2014-12-10 03:29:04,749 :    self.load_middleware()
2014-12-10 03:29:04,749 :  File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 47, in load_middleware
2014-12-10 03:29:04,749 :    raise exceptions.ImproperlyConfigured('Error importing middleware %s: "%s"' % (mw_module, e))
2014-12-10 03:29:04,749 :django.core.exceptions.ImproperlyConfigured: Error importing middleware django.middleware.clickjacking: "No module named clickjacking"

Дерево моего сайта:

.
├── db.sqlite3
├── manage.py
├── myfig.png
├── mysite
│   ├── __init__.py
│   ├── __init__.pyc
│   ├── settings.py
│   ├── settings.py~
│   ├── settings.pyc
│   ├── templates
│   │   ├── index.html
│   │   └── index.html~
│   ├── urls.py
│   ├── urls.py~
│   ├── urls.pyc 
│   ├── wsgi.py
│   └── wsgi.pyc
├── newapp
│   ├── admin.py
│   ├── admin.pyc
│   ├── foo.png
│   ├── graph.py
│   ├── graph.py~
│   ├── graph.pyc
│   ├── Images
│   ├── __init__.py
│   ├── __init__.pyc
│   ├── migrations
│   │   ├── __init__.py
│   │   └── __init__.pyc
│   ├── models.py
│   ├── models.pyc
│   ├── myfig.png
│   ├── templates
│   │   ├── green-business-graph.jpg
│   │   ├── HourlyProfileGraph.gif
│   │   ├── index.html
│   │   ├── index.html~
│   │   ├── pic_mountain.jpg
│   │   └── url
│   ├── tests.py
│   ├── urls.py
│   ├── urls.py~ 
│   ├── urls.pyc
│   ├── views.py
│   ├── views.py~
│   └── views.pyc
└── README.md

views.py (новое приложение)

from django.template import RequestContext
from django.shortcuts import render_to_response
from django.http import HttpResponse

import graph

def index(request):

    graph.generate()

urls.py(солнечное_обновление)

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

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

    #url(r'^admin/', include(admin.site.urls)),
    url(r'^home/$', include('newapp.urls')),
)

вот предлагаемый wsgi.py:

# +++++++++++ DJANGO +++++++++++
import os
import sys

## assuming your Django settings file is at '/home/my_username/projects/my_project/settings.py'
path = '/home/my_username/projects'
if path not in sys.path:
    sys.path.append(path)

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

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

person Michael Carey    schedule 10.12.2014    source источник
comment
Вы должны быть немного более описательным в том, как настроен ваш стек: какова полная трассировка стека ошибки? Как выглядит ваш файл WSGI, какие дополнительные библиотеки/фреймворки вы используете для создания своего сайта, как выглядит ваш фактический код?   -  person Timusan    schedule 10.12.2014
comment
Спасибо за добавление файла WSGI, но как минимум требуется полная трассировка стека, чтобы полностью увидеть ошибку. Несколько вещей, которые я заметил в вашем файле WSGI: странный (незаконный) отступ для операторов import и абсолютная ссылка на ваш домашний каталог.   -  person Timusan    schedule 10.12.2014
comment
Там: с полной трассировкой стека ошибок теперь показано, почему он не загружается: No module named clickjacking. Похоже, вы оборачиваете несуществующий модуль с именем clickjacking в качестве промежуточного ПО, что, конечно, не получается. Вы устанавливали удаленно?   -  person Timusan    schedule 10.12.2014
comment
должен ли путь wsgi выглядеть как home/mickpc/solar_update?   -  person Michael Carey    schedule 10.12.2014
comment
О, извините, нет, только matplotlib и numpy.   -  person Michael Carey    schedule 10.12.2014
comment
@Micheal: я очень сомневаюсь, что этот путь правильный, поскольку он указывает на место на вашем локальном компьютере для разработки. Тем не менее, это не ошибка. Он жалуется на отсутствующую зависимость, модуль clickjacking. Конечно, это может быть связано с ошибочным путем, поскольку он может попытаться выполнить поиск в неправильном месте. Поэтому я предлагаю вам сначала исправить путь, чтобы он указывал на правильное местоположение в вашей среде Python Anywhere. Затем убедитесь, что упомянутый модуль промежуточного программного обеспечения Django установлен.   -  person Timusan    schedule 10.12.2014
comment
Я новичок в django, не могли бы вы дать мне точный путь? это домашний/mickpc/solar_update?   -  person Michael Carey    schedule 10.12.2014
comment
Как бы я ни хотел, я не могу. Я не знаком со средой Python Anywhere. Параметр пути очень специфичен для вашего варианта использования, вашей среды и вашей настройки. Это также не имеет ничего общего с Django напрямую. Я предлагаю вам ознакомиться с документацией на Python Anywhere, чтобы увидеть, что они разрешают/предлагают этот путь.   -  person Timusan    schedule 10.12.2014
comment
Я использовал предложенный метод, смотрите добавление wsgi.py, спасибо Timuasn.   -  person Michael Carey    schedule 10.12.2014
comment
@Micheal: Хорошо, тогда мы должны предположить, что путь правильный, единственное, что осталось, — это отсутствующий модуль Django Clickjacking. Опять же, я не разбираюсь в Python Anywhere, но вы должны установить этот модуль там, чтобы ваше приложение загружалось, или удалить его зависимость.   -  person Timusan    schedule 10.12.2014


Ответы (1)


Макет вашего проекта предполагает, что вы используете более новую версию Django, чем та, которую установил PythonAnywhere. Я предполагаю (из-за наличия папки миграции), что вы используете 1.7. Если вы хотите использовать Django 1.7 на PythonAnywhere, вам придется использовать файл virtualenv. Инструкции есть на страницах справки PythonAnywhere.

person Glenn    schedule 10.12.2014