Cóż, myślę, że nginx sam w sobie nie ma tego w swojej konfiguracji, ponieważ pakiet obsługiwany przez Ubuntu robi to jako konwencja naśladująca konfigurację Apache Debiana. Możesz go stworzyć sam, jeśli chcesz emulować tę samą konfigurację.
Utwórz, /etc/nginx/sites-availablea /etc/nginx/sites-enablednastępnie edytuj httpblok wewnątrz /etc/nginx/nginx.confi dodaj ten wiersz
include /etc/nginx/sites-enabled/*;
Oczywiście wszystkie pliki będą w środku sites-available, a Ty utworzysz dla nich dowiązanie symboliczne sites-enableddla tych, których chcesz włączyć.
Krewni RedHata (tj. Fedora i Centos) nie mają tej funkcji po wyjęciu z pudełka, takiej jak Debian / Ubuntu. Łatwo skopiować, jak powiedział @Mohammad, jednak brak dobrych ustawień domyślnych jest mylący dla początkujących.
Boże, nie mogę powiedzieć, ile wyszukiwań przeprowadziłem, żeby to rozgryźć. Używam Amazon Linux AMI wydanie 2014.03. Te katalogi nie są tworzone automatycznie, jeśli zainstalujesz nginx z plików rpm (czy to nginx 1.6.2 lub nginx 1.7.5), ale wiele przykładów konfiguracji nginx odwołuje się do nich ... powodując, że zastanawiasz się, czy twój nginx został poprawnie zainstalowany, czy nie.
Naprawiłem to, zacząłem od nowa i utworzyłem link do syma w ten sposób: sudo ln -s /etc/nginx/sites-available/test.conf /etc/nginx/sites-enabled/test.confnie jestem pewien, dlaczego pełna ścieżka ma znaczenie: /
Jeśli wolisz bardziej bezpośrednie podejście, takie, które NIE zadziała z symlinkowaniem pomiędzy /etc/nginx/sites-availablei /etc/nginx/sites-enabled, wykonaj następujące czynności:
Znajdź plik nginx.conf. Prawdopodobnie o/etc/nginx/nginx.conf
Znajdź blok http.
Gdzieś w bloku http napisz. include /etc/nginx/conf.d/*.conf;To mówi nginxowi, aby pobierał dowolne pliki z conf.dkatalogu, które kończą się w .conf. (Wiem: to dziwne, że katalog może .w nim mieć ).
Utwórz conf.dkatalog, jeśli jeszcze nie istnieje (zgodnie ze ścieżką w kroku 3). Pamiętaj, aby nadać mu odpowiednie uprawnienia / prawa własności. Prawdopodobne dane root lub www.
Przenieś lub skopiuj osobne pliki konfiguracyjne (tak jak masz /etc/nginx/sites-available) w katalogu conf.d.
Załaduj ponownie lub uruchom ponownie nginx.
Zjedz lody.
Wszelkie .confpliki, które odtąd umieszczasz w conf.dkatalogu, staną się aktywne, dopóki przeładujesz / uruchomisz ponownie nginx.
Uwaga: Można użyć conf.di sites-enabled+ sites-availablemetody równocześnie, jeśli chcesz. Lubię testować na moim urządzeniu deweloperskim conf.d. Czuje się szybciej niż symlinkowanie i rozłączanie.
Problem „bałaganu” w symlinkingu polega na tym, że można zachować pliki konfiguracyjne i nadal bardzo łatwo wyłączać wirtualne hosty. Jeśli używasz tego podejścia, musisz przenieść pliki z conf.d, aby wyłączyć witrynę, która moim zdaniem nie jest mniej skomplikowana niż wygodne usuwanie dowiązania symbolicznego.
@bviktor słyszę cię. Właściwie używam obu sposobów. Po prostu odkryłem, że bardziej żmudne [podczas testowania konfiguracji] jest odbijanie się pomiędzy dostępnymi i obsługiwanymi stronami katalogów. W środowisku produkcyjnym planuję używać symlinkowania.
Tak, zgadzam się, wpisywanie ln -s ../sites-available/...jest dość żmudne podczas szybkiego testowania rzeczy, ale na dłuższą metę jest poręczne i łatwiejsze do zarządzania :)
@bviktor Tak wdzięczny za możliwość naciśnięcia klawisza Tab w terminalu podczas pisania nazwy ścieżki i oglądania automatycznego uzupełniania. Nie wiedziałem o tym przez jakiś czas, dopóki nie obejrzałem filmu z kimś, kto go używa. Myślałem, że wpisali 300 wpm! Potem złapałem. :)
@bvktor Uwzględniane są tylko strony z rozszerzeniem .conf. Jeśli nie chcesz, aby witryna była włączona, po prostu dodaj rozszerzenie .disabled do pliku konfiguracji witryny. Jest to standardowa konwencja w CentOS / Apache i będzie miała zastosowanie również do Nginx.
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.