2016-05-19 5 views
2

Я развертываю приложение django на сервере Ubuntu 14.04, и мне удалось получить доступ к IP-адресу в моем браузере. Однако теперь я получаю ошибку отладки django, которая помечена как «[Errno 13] Permission Denied:« .cache »« Я не совсем уверен, что это значит. Путь, который приложение получает, - «/usr/lib/python3.4/os.py», что кажется мне странным, потому что я использую виртуальную среду, которая не находится в этом каталоге, для установки версии python , и зависимости. Любая помощь могла бы быть полезна. Я понимаю, что у многих людей была та же проблема, но я не нашел ни одного хорошего решения. Я не ищу решение, которое разрешает все разрешения для определенного каталога; Я бы хотел поддерживать хороший уровень безопасности при применении этого исправления. Заранее спасибо.Errno 13 Разрешение Отказано: '.cache' django app?

От error.log:

 

    [Wed May 18 20:42:24.836874 2016] [:error] [pid 6078:tid 139663218018048] Traceback (most recent call last): 
    [Wed May 18 20:42:24.836879 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/core/handlers/base.py", line 123, in get_response 
    [Wed May 18 20:42:24.836883 2016] [:error] [pid 6078:tid 139663218018048]  response = middleware_method(request) 
    [Wed May 18 20:42:24.836886 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/middleware/common.py", line 61, in process_request 
    [Wed May 18 20:42:24.836890 2016] [:error] [pid 6078:tid 139663218018048]  if self.should_redirect_with_slash(request): 
    [Wed May 18 20:42:24.836894 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/middleware/common.py", line 79, in should_redirect_with_slash 
    [Wed May 18 20:42:24.836898 2016] [:error] [pid 6078:tid 139663218018048]  not urlresolvers.is_valid_path(request.path_info, urlconf) 
    [Wed May 18 20:42:24.836901 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/core/urlresolvers.py", line 668, in is_valid_path 
    [Wed May 18 20:42:24.836905 2016] [:error] [pid 6078:tid 139663218018048]  resolve(path, urlconf) 
    [Wed May 18 20:42:24.836908 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/core/urlresolvers.py", line 534, in resolve 
    [Wed May 18 20:42:24.836912 2016] [:error] [pid 6078:tid 139663218018048]  return get_resolver(urlconf).resolve(path) 
    [Wed May 18 20:42:24.836915 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/core/urlresolvers.py", line 374, in resolve 
    [Wed May 18 20:42:24.836919 2016] [:error] [pid 6078:tid 139663218018048]  for pattern in self.url_patterns: 
    [Wed May 18 20:42:24.836922 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/utils/functional.py", line 33, in __get__ 
    [Wed May 18 20:42:24.836939 2016] [:error] [pid 6078:tid 139663218018048]  res = instance.__dict__[self.name] = self.func(instance) 
    [Wed May 18 20:42:24.836944 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/core/urlresolvers.py", line 417, in url_patterns 
    [Wed May 18 20:42:24.836947 2016] [:error] [pid 6078:tid 139663218018048]  patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module) 
    [Wed May 18 20:42:24.836951 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/utils/functional.py", line 33, in __get__ 
    [Wed May 18 20:42:24.836954 2016] [:error] [pid 6078:tid 139663218018048]  res = instance.__dict__[self.name] = self.func(instance) 
    [Wed May 18 20:42:24.836958 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/core/urlresolvers.py", line 410, in urlconf_module 
    [Wed May 18 20:42:24.836962 2016] [:error] [pid 6078:tid 139663218018048]  return import_module(self.urlconf_name) 
    [Wed May 18 20:42:24.836965 2016] [:error] [pid 6078:tid 139663218018048] File "/usr/lib/python3.4/importlib/__init__.py", line 109, in import_module 
    [Wed May 18 20:42:24.836968 2016] [:error] [pid 6078:tid 139663218018048]  return _bootstrap._gcd_import(name[level:], package, level) 
    [Wed May 18 20:42:24.836972 2016] [:error] [pid 6078:tid 139663218018048] File "", line 2254, in _gcd_import 
    [Wed May 18 20:42:24.836975 2016] [:error] [pid 6078:tid 139663218018048] File "", line 2237, in _find_and_load 
    [Wed May 18 20:42:24.836978 2016] [:error] [pid 6078:tid 139663218018048] File "", line 2226, in _find_and_load_unlocked 
    [Wed May 18 20:42:24.836982 2016] [:error] [pid 6078:tid 139663218018048] File "", line 1200, in _load_unlocked 
    [Wed May 18 20:42:24.836985 2016] [:error] [pid 6078:tid 139663218018048] File "", line 1129, in _exec 
    [Wed May 18 20:42:24.836988 2016] [:error] [pid 6078:tid 139663218018048] File "", line 1471, in exec_module 
    [Wed May 18 20:42:24.836991 2016] [:error] [pid 6078:tid 139663218018048] File "", line 321, in _call_with_frames_removed 
    [Wed May 18 20:42:24.836995 2016] [:error] [pid 6078:tid 139663218018048] File "var/www/html/scheduler.marist.edu/sched_app/sched_site/urls.py", line 20, in 
    [Wed May 18 20:42:24.836998 2016] [:error] [pid 6078:tid 139663218018048]  url(r'^sched_app/', include('sched_app.urls')), 
    [Wed May 18 20:42:24.837002 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/django/conf/urls/__init__.py", line 52, in include 
    [Wed May 18 20:42:24.837005 2016] [:error] [pid 6078:tid 139663218018048]  urlconf_module = import_module(urlconf_module) 
    [Wed May 18 20:42:24.837009 2016] [:error] [pid 6078:tid 139663218018048] File "/usr/lib/python3.4/importlib/__init__.py", line 109, in import_module 
    [Wed May 18 20:42:24.837012 2016] [:error] [pid 6078:tid 139663218018048]  return _bootstrap._gcd_import(name[level:], package, level) 
    [Wed May 18 20:42:24.837015 2016] [:error] [pid 6078:tid 139663218018048] File "", line 2254, in _gcd_import 
    [Wed May 18 20:42:24.837018 2016] [:error] [pid 6078:tid 139663218018048] File "", line 2237, in _find_and_load 
    [Wed May 18 20:42:24.837022 2016] [:error] [pid 6078:tid 139663218018048] File "", line 2226, in _find_and_load_unlocked 
    [Wed May 18 20:42:24.837025 2016] [:error] [pid 6078:tid 139663218018048] File "", line 1200, in _load_unlocked 
    [Wed May 18 20:42:24.837028 2016] [:error] [pid 6078:tid 139663218018048] File "", line 1129, in _exec 
    [Wed May 18 20:42:24.837036 2016] [:error] [pid 6078:tid 139663218018048] File "", line 1471, in exec_module 
    [Wed May 18 20:42:24.837040 2016] [:error] [pid 6078:tid 139663218018048] File "", line 321, in _call_with_frames_removed 
    [Wed May 18 20:42:24.837043 2016] [:error] [pid 6078:tid 139663218018048] File "var/www/html/scheduler.marist.edu/sched_app/sched_app/urls.py", line 2, in 
    [Wed May 18 20:42:24.837047 2016] [:error] [pid 6078:tid 139663218018048]  from . import views 
    [Wed May 18 20:42:24.837050 2016] [:error] [pid 6078:tid 139663218018048] File "var/www/html/scheduler.marist.edu/sched_app/sched_app/views.py", line 131, in 
    [Wed May 18 20:42:24.837054 2016] [:error] [pid 6078:tid 139663218018048]  h = httplib2.Http(".cache") 
    [Wed May 18 20:42:24.837057 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/httplib2/__init__.py", line 907, in __init__ 
    [Wed May 18 20:42:24.837060 2016] [:error] [pid 6078:tid 139663218018048]  self.cache = FileCache(cache) 
    [Wed May 18 20:42:24.837064 2016] [:error] [pid 6078:tid 139663218018048] File "/home/openflow/.virtualenvs/sched_app.v0.2/lib/python3.4/site-packages/httplib2/__init__.py", line 675, in __init__ 
    [Wed May 18 20:42:24.837067 2016] [:error] [pid 6078:tid 139663218018048]  os.makedirs(self.cache) 
    [Wed May 18 20:42:24.837071 2016] [:error] [pid 6078:tid 139663218018048] File "/usr/lib/python3.4/os.py", line 237, in makedirs 
    [Wed May 18 20:42:24.837074 2016] [:error] [pid 6078:tid 139663218018048]  mkdir(name, mode) 
    [Wed May 18 20:42:24.837079 2016] [:error] [pid 6078:tid 139663218018048] PermissionError: [Errno 13] Permission denied: '.cache' 

+0

Fulltuttrace please – e4c5

+0

Вы имеете в виду точную ошибку трассировки? @ e4c5 –

ответ

1

Вот твоя ошибка:

File "var/www/html/scheduler.marist.edu/sched_app/sched_app/views.py", line 131, in 
    [Wed May 18 20:42:24.837054 2016] [:error] [pid 6078:tid 139663218018048]  h = httplib2.Http(".cache") 

Это не имеет ничего общего с кэшированием Джанго, как я (и, вероятно, почти все остальные, кто читает это) предполагается. Это связано с использованием вами .

Прокомментируйте этот раздел кода, и вы сможете его запустить.

Обновление. Я не эксперт по httplib2, но я просто прочитал, что «.cache» подразумевает каталог, в котором httplib2 будет кэшировать страницы, которые он будет извлекать. Если вы не пройдете этот параметр, он ничего не будет кэшировать. Возможно, вы захотите использовать безопасный, но доступный для записи путь, если вы хотите включить кеширование.

+0

Спасибо за быстрый ответ! Отличное решение! Работает. Не уверен, почему, но статические файлы не отображались правильно, поэтому он просто выглядит как простой html, поэтому мне придется это исправить. –

+0

Пожалуйста, разместите вопрос о статических файлах как отдельный вопрос, и у меня будет трещина. обновил мой ответ – e4c5

+0

Понимаю, вам придется найти способ реализовать это. На данный момент это работает, я опубликую отдельный вопрос для статических файлов! Большое спасибо за Вашу помощь! –

Смежные вопросы