Kiedy już to widziałem, kiedy wpisuję adres URL http://test.com/test/
, zamiast podawać mi stronę html, daje mi to interfejs podobny do przeglądarki plików, aby przeglądać wszystkie pliki w podanej lokalizacji.
Myślę, że to może moduł nginx, który można włączyć w kontekście lokalizacji.
nginx.conf
Pliku:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name 122.97.248.252;
location /test {
root /home/yozloy/html/;
autoindex on;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
zaktualizuj error.log
2012/05/19 20:48:33 [błąd] 20357 # 0: * 72 open () „/ home / yozloy / html / test” nie powiodło się (2: Brak takiego pliku lub katalogu), klient: 125.43.236.33, serwer : 122.97.248.252, żądanie: „GET / test HTTP / 1.1”, host: „unicom2.markson.hk
Muszę źle zrozumieć znaczenie lokalizacji /test
, myślałem, że oznacza to, kiedy wpiszę http://example.com/test , wtedy uzyska dostęp do słownika głównego, który jest/home/yozloy/html/
Odpowiedzi:
Powinieneś wypróbować HttpAutoindexModule.
Ustaw opcję autoindex na
on
. Domyślnie jest wyłączone.Twoja przykładowa konfiguracja powinna być w porządku
Bez opcji autoindex powinieneś otrzymać błąd 403 dla żądań kończących się
/
na katalogach, które nie mająindex.html
pliku. Dzięki tej opcji powinieneś otrzymać prostą listę:Edycja: zaktualizowano listę, aby usunąć wszelkie odniesienia do przetestowania
źródło
location /{ root /home/yozloy/html/; index index.html; autoindex on;}
nginx -V
powinien podać listę skonfigurowanych opcji. Zauważ, że autoindex jest domyślnie włączone. Więc jeśli nie ma --without-autoindex, to jest w porządku.1. Wypisz zawartość wszystkich katalogów
Ustaw opcję autoindex na
on
. Domyślnie jest wyłączone.Twój plik konfiguracyjny (
vi /etc/nginx/sites-available/default
) powinien wyglądać tak2. Wypisz zawartość tylko określonego katalogu
Ustaw opcję autoindex na
on
. Domyślnie jest wyłączone.Twój plik konfiguracyjny (
vi /etc/nginx/sites-available/default
)powinien wyglądać tak.
zmień
path_of_your_directory
na ścieżkę do kataloguMam nadzieję, że to pomoże..
źródło
location /<something>
to adres URL umożliwiający dostęp do plików, które chcesz udostępnić (na przykład/data
), a nie katalog, który chcesz udostępnić przez nginx (na przykład~/videos/funny-cats/
).Wszystkie odpowiedzi zawierają część odpowiedzi. Spróbuję połączyć wszystko w jednym.
Tryb szybkiej konfiguracji „przeglądarki plików” na świeżo zainstalowanym serwerze nginx:
Edytuj domyślną konfigurację dla nginx:
Dodaj następujące do sekcji config:
Utwórz tam folder i przykładowy plik:
Uruchom ponownie nginx
Sprawdź wynik:
http://<your-server-ip>/myfolder
na przykład http://192.168.0.10/myfolder/źródło
Musisz utworzyć
/home/yozloy/html/test
folder. Lub możesz użyćalias
jak poniżej pokaż:źródło
Próbowałem wiele razy.
I w końcu po prostu umieścić
autoindex on;
whttp
ale pozaserver
, i to jest OK.źródło
Po prostu dodaj tę sekcję do serwera, tuż przed
location / {
źródło