Na komputerze uruchamiam Apache Tomcat. Mój komputer jest podłączony do routera w moim domu, a router jest podłączony do mojego usługodawcy internetowego. Teraz chcę uruchomić serwer na moim komputerze, aby mój przyjaciel mógł zobaczyć moją witrynę hostowaną na moim komputerze. Jeśli przejdę na stronę https://whatismyip.com , wiem, że mój adres IP to xx.xx.xx.xx. To chyba adres IP mojego routera. Jeśli wpiszesz http: //xx.xx.xx.xx w mojej przeglądarce, wtedy mój router poprosi o nazwę użytkownika i hasło. Oznacza to, że mój przyjaciel może połączyć się z moim routerem. Jak mogę pozwolić im zobaczyć witrynę hostowaną w Tomcat na moim komputerze?
Nie chcę używać komercyjnego hostingu i chcę używać mojego komputera tylko jako serwera z kilku powodów.
Wewnętrzny adres IP mojego routera to 192.162.1.1, a mojego komputera to 192.162.1.2.
Odpowiedzi:
Musisz przesłać żądania do serwera WWW (prawdopodobnie portu 80) na swój komputer (.1.2). Skonfigurujesz to na swoim routerze.
źródło
Będziesz musiał zrobić kilka rzeczy:
Pamiętaj, aby zmienić hasło routera i zablokować router, ponieważ będziesz publicznie udostępniać swój adres IP, konfiguracja routera jest bardzo ważna. Prawdopodobnie dobrym pomysłem byłoby pobranie najnowszego oprogramowania układowego, aby zapobiec exploitom bezpieczeństwa.
Przekaż żądania sieciowe do lokalnego komputera na routerze. Poszukaj opcji „przekierowania portów”, która wymusi przekierowanie wszystkich żądań do określonego portu routera na adres IP urządzenia
spróbuj upewnić się, że twój wewnętrzny adres IP pozostaje taki sam. Niektóre zaawansowane routery mogą rezerwować określony adres IP dla adresu MAC komputera, więc skonfiguruj tę konfigurację na routerze. Jeśli oprogramowanie routera nie może tego zrobić, prawdopodobnie będziesz musiał zaktualizować swój wewnętrzny adres IP w mapowaniu „przekierowania portów” za każdym razem, gdy komputer uruchomi się ponownie (lub w jakiś sposób uzyska inny adres IP). Możesz także skonfigurować swój komputer, aby używał zakodowanego wewnętrznego adresu IP, ale może to również powodować dodatkowe problemy poza zakresem omawiania tutaj.
jeśli jesteś dostawcą usług internetowych, otrzymasz dynamiczny adres IP, może to być problem z wysyłaniem znajomemu nowego adresu IP za każdym razem, gdy się zmienia, abyś mógł zarejestrować się w celu uzyskania dynamicznej usługi IP (www.dyndns.org), która będzie miał program, który zaktualizuje dla ciebie wpis dns. Większość nowoczesnych routerów ma ten serwer wbudowany w oprogramowanie układowe, możesz go szukać, a następnie nie musisz uruchamiać oprogramowania na swoim komputerze.
ze względów bezpieczeństwa zmniejsz liczbę innych żądań wysyłanych do tego komputera (np. udostępnianie plików systemu Windows, ftp, bit torrent itp.).
Port 80 jest domyślnym portem używanym przez przeglądarki internetowe i serwery, więc kiedy wchodzisz na stronę http://www.mysite.com , żądasz go na porcie 80)
Port 8009 jest domyślnym portem używanym przez tomcat, więc jeśli używasz tomcat, możesz zamienić port 80 na port 8009 poniżej.
Nie musisz wykonywać żadnej innej konfiguracji portu dla serwera WWW na twoim komputerze lokalnym, możesz zlecić routerowi mapowanie i pozostawić serwer WWW uruchomiony na porcie 80 lub 8009 na twoim komputerze.
Na przykład powiedz, że chcę użyć portu 12345, a następnie mogę skonfigurować router, aby wszelkie żądania na porcie 12345 na moim routerze były wysyłane do portu 80 (lub 8009) na moim komputerze lokalnym. Dzięki temu możesz uzyskać dostęp do naszego serwera WWW na tym komputerze, przechodząc do http: // localhost / lub http: // localhost: 8009 . Inne urządzenia wewnętrzne w twojej sieci będą musiały uzyskać dostęp według adresu IP ( http: //192.168.1 . X ) lub możesz edytować pliki hostów yoru i przypisać nazwę.
Ważne jest, aby wiedzieć, że większość portu ISP blokuje port 80 (i inne wspólne porty) przed użyciem go jako serwer WWW , więc nawet jeśli masz skonfigurowane wszystkie właściwości po swojej stronie, twój przyjaciel może nadal nie być w stanie trafić do portu 80 na twoim komputerze . Zazwyczaj odbywa się to w taki sposób, aby klienci ISP wydali więcej gotówki za swoje oferty „biznesowe”. Z tego powodu prawdopodobnie będziesz musiał otworzyć router na innym porcie, jeśli naprawdę chcesz, aby twój znajomy miał dostęp do twojego serwera internetowego. Będziesz chciał trzymać się z daleka od portów o niskiej liczbie i unikniesz używania portu, z którego skonfigurowany jest router.
Jeśli wykonasz wszystkie powyższe czynności poprawnie, powinieneś mieć stabilny adres URL (taki jak http://nazwa_użytkownika.dyndns.org:12345 ), który Twoi znajomi mogą dodawać do zakładek i używać do woli
źródło
Musisz przekierować HTTP (tcp / 80) na komputer (192.162.1.2). Każdy router jest nieco inny, więc musisz znaleźć instrukcje dla swojego konkretnego modelu .
Jeśli twój router obsługuje UPnP, to(Zgarniają ekran - nie używają UPnP), możesz również zrobić to automatycznie w razie potrzeby (lepsze bezpieczeństwo) dla $$.źródło
Musisz przekazać swój port Tomcat na routerze. Domyślny port tomcat to 8080. Lepiej jest zmienić port tomcat na 80. Wykonaj następujące kroki, aby zmienić port tomcat
Teraz za pomocą edytora tekstu musisz otworzyć i zmodyfikować plik server.xml. Tutaj musisz zidentyfikować następujący wiersz (wiersz 184) i zmodyfikować go, aby zmienił się z:
do:
Z routera przekieruj port 80 z routera na adres IP komputera. Po zakończeniu powiedz znajomemu, aby uzyskał dostęp do witryny za pomocą http: //xx.xx.xx.xx/webAppName . Tutaj xx.xx.xx.xx to Twój adres IP, a webAppName to projekt Twojej witryny.
Domyślnie dostawcy usług internetowych blokują port 8080, więc musisz zmienić port, z którego korzysta tomcat.
źródło
Jeśli nie jesteś zainteresowany przekierowaniem portów lub brzmi to skomplikowanie, większość routerów ma ustawienie DMZ. Umieść swój serwer internetowy (maszynę, która obsługuje witrynę) w strefie DMZ, aby można go było oglądać ze świata zewnętrznego. Następnie, jeśli nie zarejestrowałeś nazwy domeny, poproś znajomego o wpisanie adresu IP w przeglądarce.
źródło
Konieczne będzie skonfigurowanie „przekierowania portów” na routerze portu 80 (http) na komputerze, a także zalecam skonfigurowanie „statycznego DHCP”, aby router zawsze przypisywał to samo IP do komputera podczas rozruchu.
Pamiętaj, że wystawiając komputer na działanie hakerów, możesz to zrobić. Upewnij się, że masz zainstalowaną aktualną wersję apache / tomcat i że regularnie stosujesz aktualizacje.
Jeśli router go obsługuje, możesz skonfigurować „dynamiczny DNS”, aby nadać swojemu urządzeniu stałą nazwę w Internecie (zamiast czasami zmieniającego IP #). Sprawdź dyndns.com i sprawdź ich bezpłatne opcje dynamicznego DNS.
źródło
Statyczny adres IP jest koniecznością ... Jeśli masz dynamiczny adres IP, ciągle się zmienia i musisz poinformować znajomego o nowym adresie IP
źródło