2015-09-04 4 views
0

У меня два компьютера в одной и той же корпоративной сети. Один с Windows XP (IP 192.168.101.96), а другой с Windows 7 (IP 192.168.101.98).Не удается получить доступ к серверу python, запущенному в Windows 7 с другого компьютера

Если я запускаю проект Django на ПК с Windows XP (python manage.py runserver 192.168.101.96:8001), я могу легко получить к нему доступ с ПК с Windows 7 с браузером.

Но противоположный способ не работает. Если я запускаю проект Django на ПК с Windows 7, я не могу получить к нему доступ с ПК с Windows XP.

Такая же ситуация с командой python -m SimpleHTTPServer 8001.

Я попытался добавить правило для внешних соединений на TCP-порт 8001 в настройках брандмауэра Windows. Кроме того, я пытался добавить python.exe брандмауэр исключения, но ничего не похоже на работу ...

Следует отметить, что, когда я запустить сервер Django и выполнить NETSTAT -p tcp -ano команды, я могу видеть строку:

TCP 192.168.101.98:8001 0.0.0.0:0    LISTENING  6920 

Но тем не менее, ничего не работает. Что может быть источником проблемы?

+0

Что произойдет, если вы выполните ping машину Windows 7 с компьютера Windows XP? – XtrmJosh

+0

«ping 192.168.101.98» работает плавно – kostr22

+0

Вы пытались запустить django с помощью IP-адреса? например, 'python manage.py runningerver 192.168.101.98: 80' или аналогичный? Я думаю, что в Windows 7 возможно, что функция привязки IP не работает, по http://stackoverflow.com/questions/2901957/django-0-0-0-080-cant-access-remotely – XtrmJosh

ответ

0

для доступа к другому компьютеру сервер, сервер должен быть запущен на порту 80.
необходимо запустить сервер Джанго на порт 80

python manage.py runserver 0.0.0.0:80 

затем получить доступ с типом IP в браузере без пост номер:

http://192.168.101.98/ 

удачи

+0

Не работает для меня. Если сервер должен быть запущен на порту 80, почему я могу получить доступ к серверу Windows XP, запущенному на любом порту, с компьютера Windows 7? – kostr22

+0

Кажется, что порт 80 просто освобождается от необходимости вводить номер порта в браузере, но это не является источником моей проблемы. – kostr22

+0

80 - это только порт по умолчанию. технически вы можете получить доступ к нему на любом порту, который он прослушивает (разрешает брандмауэр) –

0

проблема была в специальном брандмауэре ESET Endpoint Security. Это «автоматический режим» блокирует трафик без каких-либо проматов для пользователя. Проблема может быть решена путем добавления специального правила к этому брандмауэру или, например, изменения его основной политики на «интерактивный режим».