Pewnego dnia kupiłem Raspberry Pi i miałem nadzieję, że skonfiguruję (mały) publiczny serwer sieciowy LAMP, jako dowód mojej koncepcji.
Zrobiłem wszystko online. Dosłownie wszystko. Pi działa świetnie jako serwer lokalny. Może uzyskać dostęp do mojej strony internetowej i wszystkiego. Ale próba publicznego dostępu do niego stwarza mnóstwo problemów. Oto co dotychczas zrobiłem:
- Skonfigurowałem przekierowanie portów na porcie 80 na statyczny adres IP routera Pi.
- Próbowałem użyć mojego lokalnego adresu IP 192.168.8.111, ale oczywiście był to głupi pomysł. Następnie spróbowałem użyć mojego publicznego adresu IP, ale bezskutecznie.
- Wskazał moją domenę na mój publiczny adres IP (27.31.1X.XXX), ale bez powodzenia. Błąd „1.1.1.1:81” nie został osiągnięty.
- Myślę o jednej rzeczy, ale nie mogę o tym myśleć. Być może wy faceci pobudzicie mój umysł.
Nie korzystałem z żadnej usługi DynDNS ani innej usługi statycznego adresu IP, ponieważ właśnie pracuję teraz nad koncepcją koncepcji. Nie potrzebuję go, aby działał wiecznie.
Jakieś pomysły?
Odpowiedzi:
Czasami router ma zapory ogniowe blokujące port 80, sprawdź to. Czasami również dostawcy usług internetowych zwykle blokują port 80, aby uniemożliwić abonentom uruchamianie serwerów sieciowych, aby oczywiście zmniejszyć przepustowość. Jeśli twój dostawca usług internetowych blokuje port 80, spróbuj przekierować go na inny port, powiedzmy port 87. Trzeba skonfigurować router do przekazywania ruchu na porcie 87 i skonfigurować serwer WWW do obsługi portu 87 witryny. Jeśli oba nie powiedzie się, spróbuj sprawdzić, czy Twój PI może uzyskać dostęp do Internetu, czasami przeprowadzana jest niewłaściwa konfiguracja sieci i powoduje takie problemy.
źródło
Twój dostawca usług internetowych może blokować przekierowanie portów na Twój adres IP. powszechną praktyką dostawców usług internetowych jest zapobieganie uruchamianiu przez nich własnych serwerów. Podejrzewam, że również ty korzystasz z dzielenia adresu IP z kilkoma użytkownikami, dlatego nie możesz przekazać dalej na twój serwer.
spróbuj użyć http://www.canyouseeme.org/, aby potwierdzić, czy port 80 jest otwarty na świat
źródło
Najpierw sprawdź dwukrotnie konfigurację Apache na RPi i upewnij się, że nie nasłuchuje na 127.0.0.1 lub localhost.
Sprawdź przekierowanie portów w routerze i upewnij się, że przekazałeś port TCP 80, a nie port UDP 80.
Upewnij się, że nie masz żadnych
iptables
reguł dotyczących RPi, które mogą filtrować ruch. Spróbuj wyczyścić wszystkieiptables
zasady. Sprawdź także dwukrotnie konfigurację routera, aby upewnić się, że nie ma skonfigurowanej dziwnej zapory ani opcji filtrowania. (Możesz rozważyć połączenie RPi bezpośrednio z domowym połączeniem internetowym, jeśli to możliwe, i nie przechodzenie przez router jako dodatkowy krok w razie potrzeby.)Spróbuj
http://{your PUBLIC ip}
z systemu poza siecią (np. Spróbuj uzyskać dostęp do telefonu, gdy jesteś podłączony tylko do sieci komórkowej lub poproś znajomego, aby spróbował uzyskać dostęp z domu). Martw się o nazwę swojej domeny po potwierdzeniu połączenia z nią z podanym adresem IP.Jeśli to nie zadziała, spróbuj zmienić konfigurację Apache i przekierowania portów na inny port, taki jak 8888 lub 48888, i spróbuj przejść
http://{your public ip}:8888
z telefonu do podobnego portu . Jeśli alternatywny port działa, Twój dostawca usług internetowych blokuje przychodzące żądania na porcie 80.Jeśli to nadal nie działa, Twój dostawca usług internetowych może blokować cały ruch przychodzący do Ciebie, jest to częste, jeśli twój główny dostawca usług internetowych jest usługą komórkową. Musisz obejść konfigurację lub korzystanie z istniejącej sieci VPN, która jest dostępna poza siecią domową, aby obejść ten problem.
źródło