Muszę pozwolić użytkownikom aplikacji otwierać folder, klikając łącze na stronie internetowej. Ścieżka do folderu znajduje się w sieci i można uzyskać do niej dostęp z dowolnego miejsca. Prawdopodobnie nie ma na to prostego sposobu, ale może się mylę?
Odpowiedziałem poniżej; Jest to powszechny wymóg aplikacji internetowych dla przedsiębiorstw, który jest prawie niemożliwy ze względu na błędne zabezpieczenia (powinno być możliwe włączenie łączy do plików na zaufanych stronach http). Dokładnie testowałem tylko w systemie Windows.
Właśnie wypróbowałem to w IE 11 i faktycznie możesz otworzyć plik lokalny bez pobierania go (tak jak w przypadku otwierania już istniejącej ścieżki do pliku). To nadal nie istnieje w chrome.
upewnij się, że uprawnienia do folderu są ustawione tak, że lista katalogów jest dozwolona, a następnie po prostu skieruj kotwicę na ten folder za pomocą na przykład chmod 701 (może to być ryzykowne)
<ahref="./downloads/folder_i_want_to_display/">Go to downloads page</a>
upewnij się, że nie masz pliku index.html żadnego pliku indeksu w tym katalogu
Ta odpowiedź działa. Część „dozwolone listowanie katalogów” jest bardzo ważna. Jeśli nie jest to dozwolone, możesz je włączyć, ale jest inne dla każdej aplikacji serwerowej.
Korzystanie z file: ///// po prostu nie działa, jeśli ustawienia zabezpieczeń są ustawione na nawet umiarkowany poziom.
Jeśli chcesz, aby użytkownicy mogli tylko pobierać / wyświetlać pliki * znajdujące się w sieci lub udostępniać, możesz skonfigurować katalog wirtualny w usługach IIS. Na karcie Właściwości upewnij się, że „Udział znajdujący się na innym komputerze” jest zaznaczony, a „Połącz jako ...” jest kontem, które może zobaczyć lokalizację sieciową.
Połącz z katalogiem wirtualnym na swojej stronie internetowej (np. Http: // twoja_witryna / twój katalog wirtualny / ), a to otworzy widok katalogu w przeglądarce internetowej.
* Możesz zezwolić na uprawnienia do zapisu w katalogu wirtualnym, aby umożliwić użytkownikom dodawanie plików, ale nie próbowano tego i zakładać, że uprawnienia sieciowe zastępują to ustawienie.
Ma to znaczenie dzisiaj, ponieważ Chrome i nowsze wersje IE będą blokować dostęp do lokalnych zasobów file: // ze stron internetowych niebędących plikami. Ponadto można to skonfigurować tak, aby działało w usługach IIS Express, chociaż należy je dodać i uruchomić ręcznie.
Możesz również skopiować adres łącza i wkleić go w nowym oknie, aby obejść zabezpieczenia. Działa to w przeglądarce Chrome i Firefox, ale może być konieczne dodanie ukośników w przeglądarce Firefox.
Trochę spóźniłem się na imprezę, ale ostatnio musiałem sobie z tym poradzić, choć trochę inaczej, to może pomóc komuś w podobnych okolicznościach do moich.
Używam Xampp na laptopie, aby uruchomić czysto lokalną aplikację internetową w systemie Windows. (Znam bardzo specyficzne środowisko). W tym przypadku używam linku html do pliku php i uruchamiam:
Obiecujące, ale kiedy uruchamiam to w przeglądarce Firefox, karta się zawiesza. (Wydaje się, że trwa sesja czy coś, ponieważ mogę uzyskać dostęp do innych witryn, ale ta witryna wydaje się zawieszona - nawet w innych zakładkach!)
Właśnie przetestowałem to w Firefoksie, działa dla mnie, ale nie mogę określić folderu, w którym chcesz otworzyć, otwiera się tylko w katalogu głównym pliku php.
Mam nadzieję, że kiedyś komuś to pomoże. Robiłem mały POC i natknąłem się na to. Przycisk onClick wyświetla zawartość folderu. Poniżej znajduje się kod HTML,
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.