Bezpiecznie wyczyść ostrzeżenie ownCloud Apache .htaccess

W przypadku instalacji ownCloud Classic hostowanej przez Apache, napraw ostrzeżenie „AllowOverride All” lub „.htaccess nie działa”, ustawiając AllowOverride Allodpowiedni <Directory>blok Apache dla głównego katalogu internetowego ownCloud na aktywnym hoście wirtualnym. Przetestuj konfigurację Apache, przeładuj usługę i odśwież przegląd administracyjny ownCloud. Nie włączaj nadpisywania dla całego systemu plików.

Edytor wirtualnego hosta Apache pokazujący DocumentRoot i odpowiadający mu blok ownCloud Directory z opcją AllowOverride All
Nadpisanie powinno znaleźć się w bloku katalogu Apache, który odpowiada ścieżce systemu plików ownCloud.

Co oznacza ostrzeżenie

Dyrektywa Apache'a AllowOverridekontroluje, które ustawienia .htaccessmogą zostać zastosowane w pliku. Jeśli nadpisywanie jest wyłączone dla katalogu ownCloud, Apache może zignorować reguły w .htaccesspliku dostarczonym przez ownCloud. Może to wpłynąć na przepisywanie i reguły bezpieczeństwa, dlatego też AllowOverride Allw aktualnym podręczniku ownCloud 10.16 znajduje się przykład konfiguracji Apache'a.

Dyrektywa obowiązuje tylko w <Directory>sekcji Apache. Nie należy jej umieszczać wewnątrz bloku .htaccess, <Location>bloku ani ścieżki URL. Apache ostrzega również administratorów, aby nie włączali nadpisywania w <Directory "/">bloku globalnym; zamiast tego należy ograniczyć zakres ustawienia do katalogu instalacyjnego ownCloud. Zapoznaj się z podręcznikiem instalacji ownCloud 10.16 Apache oraz AllowOverridedokumentacją Apache .

Przed edycją Apache

  • Sprawdź, czy serwerem WWW obsługującym ownCloud jest Apache. Ta dyrektywa nie konfiguruje Nginx. Jeśli Apache znajduje się za serwerem proxy, zidentyfikuj host Apache obsługujący pliki ownCloud.
  • Znajdź rzeczywistą ścieżkę instalacji ownCloud, taką jak /var/www/owncloud. Użyj ścieżki systemu plików obsługiwanej przez Apache, a nie adresu URL przeglądarki, takiego jak /owncloud.
  • Przed zmianą pliku wirtualnego hosta należy wykonać jego kopię zapasową. W systemach Debian i Ubuntu przewodnik ownCloud korzysta z /etc/apache2/sites-available/owncloud.conf; inne dystrybucje korzystają z innych lokalizacji.
  • Sprawdź, czy Twoje wirtualne hosty HTTP i HTTPS są oddzielne. Wprowadź odpowiednie ustawienie w vhoście, który obsługuje żądania ownCloud. Jeśli oba vhosty obsługują pliki bezpośrednio, skonfiguruj je spójnie.

W systemach Debian i Ubuntu sudo apachectl -Swyświetla wirtualne hosty Apache i pliki konfiguracyjne, które je definiują. Pomaga to uniknąć edycji nieużywanej domyślnej witryny, podczas gdy vhost HTTPS nadal obsługuje ownCloud.

Dodaj dyrektywę do odpowiedniego bloku katalogu

Otwórz aktywny plik vhost i znajdź istniejącą <Directory>sekcję ownCloud. Dodaj lub popraw wiersz. W przypadku standardowej instalacji w [ brakuje fragmentu /var/www/owncloud]. Odpowiedni fragment może wyglądać następująco:

DocumentRoot /var/www/owncloud

<Directory /var/www/owncloud/>
  Options +FollowSymLinks -Indexes
  AllowOverride All
  Require all granted
</Directory>

Scal to ustawienie z istniejącą konfiguracją zamiast zastępować cały vhost tym krótkim przykładem. Jeśli katalog ownCloud znajduje się gdzie indziej, zastąp obie ścieżki rzeczywistą ścieżką. Apache wymaga, aby ścieżka do katalogu była zgodna ze ścieżką systemu plików, której używa dla plików.

AllZezwala dowolnej dyrektywie dozwolonej w .htaccesspliku na nadpisanie ustawień serwera w tym katalogu. To szerokie uprawnienie, dlatego ogranicz ten blok do katalogu głównego witryny ownCloud. Nie zmieniaj ustawień AllowOverride Nonedla /, /var/www, ani niepowiązanych witryn, aby po prostu wyciszyć ostrzeżenie.

Przetestuj, przeładuj i zweryfikuj

W systemach Debian i Ubuntu dokumenty ownCloud mod_rewritesą wymagane do konfiguracji Apache. Jeśli nie są włączone, należy je włączyć za pomocą:

sudo a2enmod rewrite

Następnie sprawdź konfigurację przed jej zastosowaniem:

sudo apachectl -t

Kontynuuj tylko wtedy, gdy Apache zgłosi Syntax OK. Przeładuj Apache, aby odczytał zaktualizowany vhost:

sudo systemctl reload apache2

W dystrybucjach korzystających z httpdnazwy usługi należy zamiast tego użyć poleceń configuration-test i reload tej dystrybucji. Wróć do Ustawienia > Administracja > Przegląd w ownCloud i odśwież stronę. Ostrzeżenie powinno zniknąć, jeśli Apache odczytuje edytowany vhost i przetwarza plik ownCloud .htaccess.

Terminal Linux z uruchomionym modułem a2enmod rewrite i informacją o włączonym module Apache rewrite
Sprawdź, czy moduł przepisywania Apache'a jest włączony, gdy ostrzeżenie dotyczy przepisywania ownCloud.
Terminal Linux pokazujący polecenie apachectl -t zwracające składnię OK przed ponownym załadowaniem Apache'a
Przed ponownym załadowaniem usługi sprawdź poprawność konfiguracji Apache.
Strona przeglądu administracyjnego w stylu ownCloud bez widocznego ostrzeżenia AllowOverride
Po ponownym załadowaniu systemu ponownie przejdź do przeglądu administracyjnego i sprawdź, czy ostrzeżenie .htaccess zniknęło.

Jeśli ostrzeżenie nadal występuje

  • Sprawdź aktywny vhost. Uruchom sudo apachectl -Sponownie i potwierdź, że zmieniony plik należy do nazwy hosta i portu używanych przez ownCloud. Wiersz AllowOverride Allw niepasującym bloku nie ma żadnego efektu.
  • Sprawdź dokładną ścieżkę i sekcję. Upewnij się, że blok jest <Directory /path/to/owncloud/>sekcją dosłowną i że ścieżka odpowiada katalogowi instalacyjnemu. Apache ignoruje AllowOverridein .htaccessi <Location>.
  • Regeneruj nieaktualne reguły ownCloud tylko w razie potrzeby. Jeśli vhost jest poprawny, ale reguły przepisywania ownCloud wymagają aktualizacji, zapoznaj się z dokumentacją techniczną occ maintenance:update:htaccess. Uruchom go z katalogu ownCloud jako użytkownik serwera WWW, na przykład sudo -u www-data php occ maintenance:update:htaccess. Użytkownik serwera WWW musi mieć możliwość zapisu dostarczonego .htaccesspliku w celu przeprowadzenia tej aktualizacji. Nie ustawiaj pliku jako dostępnego do zapisu dla wszystkich użytkowników; popraw jego właściciela lub uprawnienia zgodnie z instrukcjami instalacji.
  • Przeczytaj dziennik błędów Apache po wystąpieniu błędu 500. Sprawdzanie składni weryfikuje główną konfigurację Apache, ale dyrektywa w programie .htaccessnadal może się nie powieść, jeśli brakuje jej modułu lub jest niedozwolona. Użyj dziennika błędów, aby zidentyfikować konkretny moduł lub regułę.

Udokumentowana konfiguracja adresu URL ownCloud bez pliku index.php wymaga również mod_rewrite, mod_env, i zapisywalnego katalogu głównego .htaccess; jest to powiązana konfiguracja przepisywania, a nie powód do rozszerzania nadpisywalności poza katalog ownCloud. Jeśli Twoja konfiguracja korzysta z PHP-FPM, postępuj zgodnie z aktualnymi instrukcjami ownCloud dla tej instalacji, zamiast zmieniać procedury obsługi PHP, aby rozwiązać problem z ostrzeżeniem o nadpisywaniu Apache. Jeśli ostrzeżenie informuje, że katalog danych może być publicznie dostępny, sprawdź, czy katalog danych znajduje się poza katalogiem głównym lub jest chroniony jawną regułą Apache; .htaccesssamo usunięcie ostrzeżenia nie dowodzi, że nie można bezpośrednio żądać dostępu do plików prywatnych.

Aby zapoznać się z udokumentowanymi zachowaniami i ograniczeniami platformy, zapoznaj się z wytycznymi dotyczącymi adresu URL bez pliku index.php w serwisie ownCloud oraz z jego dokumentacją poleceń OCC .

Zostaw komentarz

Bezpiecznie wyczyść ostrzeżenie ownCloud Apache .htaccess

Bezpiecznie wyczyść ostrzeżenie ownCloud Apache .htaccess

Ustaw opcję AllowOverride All tylko dla głównego katalogu internetowego ownCloud, sprawdź aktywny vhost Apache i bezpiecznie przeładuj, aby przywrócić reguły .htaccess.

Skonfiguruj audyt przedsiębiorstwa ownCloud i zweryfikuj dzienniki

Włącz aplikację Enterprise Auditing firmy ownCloud, kieruj zdarzenia admin_audit do chronionego pliku dziennika i upewnij się, że rejestrowane są rzeczywiste działania użytkowników.

Połącz ownCloud Infinite Scale z Keycloak za pomocą OIDC

Połącz ownCloud Infinite Scale z Keycloak za pomocą OIDC

Wydawca domeny, klient sieciowy i użytkownik Keycloak są zgodne z oświadczeniami, dzięki którym ownCloud Infinite Scale może niezawodnie logować użytkowników za pośrednictwem klientów sieciowych i mobilnych.

Przenieś pliki ownCloud do nowego właściciela bez utraty udziałów

Przenieś swoje pliki i udziały wychodzące za pomocą polecenia occ usługi ownCloud, sprawdź, co pozostaje, i zweryfikuj dostęp przed usunięciem starego konta.

Przyspiesz zapytania ownCloud 10, bezpiecznie zarządzając indeksami

Dowiedz się, kiedy indeksy bazy danych ownCloud 10 wymagają uwagi, jak bezpiecznie stosować obsługiwane aktualizacje schematu oraz kiedy lepszym rozwiązaniem jest dostrojenie zapytań lub zmiana bazy danych.

Zamontuj udział SMB/CIFS w ownCloud bez montowania w systemie Linux

Podłącz udostępniony w sieci dysk Windows lub Samba do ownCloud za pośrednictwem pamięci zewnętrznej, zweryfikuj dane uwierzytelniające i bezpiecznie rozwiąż problemy z niedostępnymi folderami.

Bezpieczne czyszczenie wersji plików ownCloud za pomocą polecenia occ

Bezpieczne czyszczenie wersji plików ownCloud za pomocą polecenia occ

Usuń każdą zapisaną wersję pliku ownCloud Server Classic dla jednego konta lub wszystkich użytkowników i odróżnij pełne usunięcie od wygaśnięcia na podstawie okresu przechowywania.

Odmowa połączenia z ownCloud Mobile? Sprawdź adres URL i dostępność

Odmowa połączenia z ownCloud Mobile? Sprawdź adres URL i dostępność

Śledź odmowę połączenia mobilnego ownCloud, sprawdzając we właściwej kolejności adres URL serwera, sieć telefoniczną, punkt końcowy HTTPS i dzienniki serwera.

Niezawodne uruchamianie zadań w tle ownCloud za pomocą timera Systemd

Zastąp zadania wykonywane na żądanie timerem systemd, który co 15 minut uruchamia polecenie occ system:cron obsługiwane przez ownCloud.

Przywróć synchronizację ownCloud WebDAV, znajdując uszkodzoną trasę

Prześledź żądanie WebDAV przez Apache, Nginx lub odwrotny serwer proxy, a następnie sprawdź, czy synchronizacja ownCloud działa za pomocą uwierzytelnionego testu PROPFIND.