2013-05-28 4 views
1

Я сделал веб-сервер на своем устройстве Android (используя Nanohttpd). Это работает отлично через порт 8080 , но я хочу сделать это хорошо через порт 80, (я хочу ленты на моем браузере: http://192.168.x.x вместо http://192.168.x.x:8080/), но я не в состоянии сделать этоКак сменить порт 80 android

Это как Я называю метод, который создает веб-сервер:

httpServer = new NanoHTTPD(80,Environment.getExternalStorageDirectory()); 
  • Может кто-нибудь сказать мне, что служба запущена по умолчанию через порт 80?
  • Как я могу исправить эту проблему?
+0

Любые сообщения об ошибках? – greenapps

+0

Можете ли вы опубликовать, откуда у вас библиотека, потому что используемый вами конструктор не является стандартным конструктором NanoHTTPD. У них изначально только 'NanoHTTPD (String hostname, int port)' и 'NanoHTTPD (int port)' – JRomero

+0

Я получил его от github – AndroidM

ответ

2

я, наконец, нашел способ исправить это, для тех, у кого есть такая же проблема, вот решение

  • Я коренится телефон с помощью UnlockRoot

  • Затем я установил Port redirector из игры и я перенаправил трафик с порта 80 на порт 8080, и теперь мой веб-сервер доступен по адресу: 192.168.xx

Надеюсь, это поможет :)

+0

Альтернативный перенаправитель портов в магазине воспроизведения: https://play.google.com/store/apps/details?id=at.bherbst.net&hl=ru –

1

Порты ниже 1024 ограничены системами Unix. Вам нужны привилегии суперпользователя для привязки к этим «хорошо известным» портам.

Список этих «известных» портов на wikipedia

+0

, если я root, как я могу это сделать – AndroidM

+0

Проверьте этот вопрос: http: // stackoverflow .com/д/7295873/1321873. После принятия привилегий суперпользователя вы можете напрямую запустить веб-сервер на порту 80 без необходимости переадресации портов. – Rajesh

+0

@Rajest - на самом деле, нет, это не будет работать напрямую (сообщение, на которое вы ссылаетесь, вводит в заблуждение). Один из них должен был бы использовать 'su' для запуска веб-сервера в своем собственном корневом процессе или, возможно, иметь прокладку, которая открывает сокет для прослушивания, а затем передает scoket через unix-доменный сокет для использования не-корневого веб-сервера (не уверен если это будет работать) –

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

  • Нет связанных вопросов^_^