Django: IE не загружает localhost или загружается очень МЕДЛЕННО - PullRequest
8 голосов
/ 18 мая 2011

Я только начинаю изучать Django, строю проект на своем компьютере, работаю под управлением 64-битной Windows 7, Python 2.7, Django 1.3.

По сути, все, что я пишу, загружается в Chrome и Firefox немедленно,Но для IE (версия 9) он просто останавливается и ничего не делает.Я могу загрузить "http://127.0.0.1:8000"" в IE и оставить компьютер включенным на несколько часов, и он не загружается. Иногда, когда я обновляю пару раз или перезапускаю IE, это работает. Если я что-то изменю в коде, снова, Chrome и Firefox отражают изменения мгновенно, а IE нет - если он вообще загружает страницу.

Что происходит? Я схожу с ума здесь ...

Ответы [ 4 ]

3 голосов
/ 02 июня 2011

Это может быть связано с этой проблемой: https://code.djangoproject.com/ticket/16099

По сути, сервер dev не является многопоточным, и если браузер открывает соединение, а затем пытается установить второе соединение для получения данных, он может зависнуть навсегда.

Edit:

Также смотрите эту проблему: https://code.djangoproject.com/ticket/15178

Если вы можете предоставить способ воспроизвести проблему, возможно, мы сможем найти решение.

Кроме того, если вы можете попробовать последнюю версию разработки и посмотреть, исправляет ли это ее, мы недавно выпустили новый патч, который добавляет возможность многопоточности к команде runserver.

0 голосов
/ 30 октября 2012

У меня тоже была эта проблема, этот обходной путь исправляет. работает только для django <= 1.3 <br> http://nedbatchelder.com/blog/201103/quick_and_dirty_multithreaded_django_dev_server.html

@ Эндрю Барбер
EDIT резюме / как я это сделал:
создать файл с именем managec.py (c = одновременный)
вставьте туда следующий код:

#!/usr/bin/env python
# 
# A clone of manage.py, with multi-threadedness monkeypatched in.

import os, sys
from django.core.management import execute_manager
try:
    import settings # Assumed to be in the same directory.
except ImportError:
    sys.stderr.write(
        "Error: Can't find the file 'settings.py' in the directory containing %r. "
        "It appears you've customized things.\n"
        "You'll have to run django-admin.py, passing it your settings module.\n"
        "(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" 
        % __file__
        )
    sys.exit(1)

def monkey_patch_for_multi_threaded():
    # This monkey-patches BaseHTTPServer to create a base HTTPServer class that 
    # supports multithreading 
    import BaseHTTPServer, SocketServer 
    OriginalHTTPServer = BaseHTTPServer.HTTPServer

    class ThreadedHTTPServer(SocketServer.ThreadingMixIn, OriginalHTTPServer): 
        def __init__(self, server_address, RequestHandlerClass=None): 
            OriginalHTTPServer.__init__(self, server_address, RequestHandlerClass) 

    BaseHTTPServer.HTTPServer = ThreadedHTTPServer

if __name__ == "__main__":
    monkey_patch_for_multi_threaded()
    execute_manager(settings)


запустите ваш сервер разработки с ./managec.py runserver 8080 (или любым другим портом, который вы используете)
наслаждайтесь:)

0 голосов
/ 23 июня 2011

Я работаю с Windows 7, 64bit, django 1.3, py 2.6, и я всегда проверяю функциональность сервера Dev в IE, Firefox, Safari и Chrome. В моей новейшей системе установлен IE9, а в моей старой - IE8. Я также заметил проблему с зависанием. Я обнаружил, что когда я использовал 127.0.0.1:8000, он зависал и потребовал обновления, чтобы заставить его работать. Если я запустил сервер Dev, используя определенный IP-адрес своего сервера, проблема, похоже, исчезла. Например, python manage.py runserver 192.168.1.134:8000

Похоже, что-то очень специфичное для IE9. Если вы воспользуетесь Google, больше людей увидят эту проблему.

0 голосов
/ 02 июня 2011

Я не уверен, что у вас такая же проблема, как у меня. Но я также натолкнулся на ту же белую страницу на IE9, и, видимо, это было вызвано тем, что html-тег fieldset скрывает мою форму.

Попробуйте проверить свой HTML-код или проверить совместимость HTML-тегов с IE9. Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...