Próbuję hostować lokalnie wiele witryn z włączoną HTTPS, ale w tym celu musiałbym skonfigurować mój komputer lokalny tak, aby używał wielu adresów IP dla hosta lokalnego (tak mi się wydaje). Czy istnieje sposób, aby wiele adresów IP było rozpoznawanych lokalnie w tym samym czasie?
Używam OS X 10.6 (edycja standardowa - nie serwer) i konfiguracji serwera MAMP.
Dzięki!
NameVirtualHost *:443
.NameVirtualHost
że nie pasowałeś do swoich<VirtualHost>
bloków, jeśli wiązałeś konkretnie z 127.0.0.1. Nie ważne w tym przypadku, ponieważ znalazłeś działające rozwiązanie, ale NoNoNo ma rację - nie potrzebujesz dodatkowych adresów IP.NameVirtualHost *:80 NameVirtualHost *:443
i próbowałem użyć vhostów takich jak:<VirtualHost _default_:443>
i<VirtualHost 127.0.0.1:443>
, ale żadne nie zapewni połączenia HTTPS po pierwszym vhostu z listy. Mogę dostarczyć pełne pliki ssl.conf i vhost.conf, jeśli jesteś zainteresowany!Aby uzyskać alias localhost, możesz użyć tego polecenia terminala, aby utworzyć „sprzężenie zwrotne”:
Dzięki konfiguracji aliasu localhost możesz w ten sposób utworzyć wiele wirtualnych hostów HTTPS:
Możesz również zainicjować te hosty podczas uruchamiania, jeśli to pożądane, za pomocą crona root:
Mam nadzieję, że pomoże to każdemu, kto napotkał te same problemy, co ja!
źródło
echo PASSWORD
to straszny pomysł. Prymitywną alternatywą byłoby włożenie czegoś do crona root'a jaksudo crontab -e
i@reboot ifconfig lo0 alias 127.0.0.2
. Istnieje z pewnością bardziej eleganckie rozwiązanie, ale wszystko, co wymaga hasła w postaci zwykłego tekstu, jest niedopuszczalne.ssh -L 127.0.0.2:443 foo:443 -L 127.0.0.3:443 beta.foo:443 user@host
. W/etc/hosts
razie potrzeby możesz zdefiniować nazwy hostów dla tych lokalnych adresów IP w pliku. Okazuje się, że jest bardzo przydatny do tworzenia stron internetowych i testowania / zdalnego, zwłaszcza jeśli nie możesz używać niestandardowych portów dla swoich aplikacji.Nigdy nie musisz dodawać dodatkowych adresów IP do lokalnego hosta w systemie Linux lub Windows. Będą domyślnie odpowiadać, bez dodatkowej konfiguracji, na wszystkie adresy IP od 127.0.0.0/8:
Po prostu spraw, aby Twoja aplikacja nasłuchiwała na dowolnym adresie IP z zakresu 127.0.0.0/8, a będziesz gotowy.
Przykład:
Jedna konsola:
Kolejna konsola:
Jak zauważył komentator, konieczne jest jawne dodanie adresów IP do interfejsu localhost na MacOS / Darwin.
źródło
nc -vvl 127.0.34.2 9022
wrócićnc: Can't assign requested address
. Po zdefiniowaniu aliasuifconfig lo0 alias 127.0.34.2
działa. Wszelkie pomysły, dlaczego tak jest? Działa na OSX Yosemite.