Elimina in modo sicuro l'avviso relativo al file .htaccess di ownCloud Apache

Per un'installazione di ownCloud Classic ospitata su Apache, risolvi l'avviso "AllowOverride All" o ".htaccess non funziona" impostando AllowOverride Allall'interno di un <Directory>blocco Apache corrispondente per la directory principale di ownCloud nell'host virtuale attivo. Verifica la configurazione di Apache, riavvia il servizio e aggiorna la panoramica di amministrazione di ownCloud. Non abilitare le sovrascritture per l'intero filesystem.

Un editor di host virtuali Apache che mostra DocumentRoot e un blocco di directory ownCloud corrispondente con AllowOverride All
La sovrascrittura deve trovarsi nel blocco di directory di Apache che corrisponde al percorso del filesystem di ownCloud.

Cosa significa l'avvertimento

La direttiva Apache AllowOverridecontrolla quali impostazioni un .htaccessfile può applicare. Se le sovrascritture sono disabilitate per la directory ownCloud, Apache può ignorare le regole presenti nel .htaccessfile fornito da ownCloud. Ciò può influire sulle regole di riscrittura e di sicurezza, motivo per cui il manuale attuale di ownCloud 10.16 include AllowOverride Allun esempio di configurazione di Apache.

La direttiva è valida solo all'interno di una <Directory>sezione Apache. Non deve essere inserita all'interno .htaccessdi un <Location>blocco o di un percorso URL. Apache avverte inoltre gli amministratori di non abilitare le sovrascritture nel <Directory "/">blocco globale; è preferibile limitare l'impostazione alla directory di installazione di ownCloud. Consultare la guida all'installazione di Apache per ownCloud 10.16 e AllowOverridela documentazione di riferimento di Apache .

Prima di modificare Apache

  • Verifica che il server web che gestisce ownCloud sia Apache. Questa direttiva non configura Nginx. Se Apache si trova dietro un proxy, identifica l'host Apache che serve i file di ownCloud.
  • Trova il percorso di installazione effettivo di ownCloud, ad esempio /var/www/owncloud. Usa il percorso del filesystem fornito da Apache, non un URL del browser come /owncloud.
  • Eseguire un backup del file virtual-host attivo prima di modificarlo. Su Debian o Ubuntu, la guida di ownCloud utilizza /etc/apache2/sites-available/owncloud.conf; altre distribuzioni utilizzano posizioni diverse.
  • Verifica se i tuoi host virtuali HTTP e HTTPS sono separati. Imposta la configurazione nell'host virtuale che gestisce le richieste di ownCloud; se entrambi gli host virtuali gestiscono direttamente i file, configurali entrambi in modo coerente.

Su Debian o Ubuntu, sudo apachectl -Svengono elencati gli host virtuali di Apache e i file di configurazione che li definiscono. Questo aiuta a evitare di modificare un sito predefinito inutilizzato mentre l'host virtuale HTTPS continua a servire ownCloud.

Aggiungi la direttiva al blocco di directory corrispondente

Apri il file vhost attivo e individua la <Directory>sezione ownCloud esistente. Aggiungi o correggi la riga corrispondente. Per un'installazione standard su /var/www/owncloud, la parte rilevante potrebbe apparire così:

DocumentRoot /var/www/owncloud

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

Integra questa impostazione nella tua configurazione esistente anziché sostituire l'intero vhost con questo breve esempio. Se la tua directory ownCloud si trova altrove, sostituisci entrambi i percorsi con il percorso effettivo. Apache richiede che il percorso della directory corrisponda al percorso del filesystem che utilizza per i file.

AllConsente a qualsiasi direttiva consentita in un .htaccessfile di sovrascrivere le impostazioni del server in questa directory. Si tratta di un'autorizzazione molto ampia, quindi è consigliabile limitare questo blocco alla directory principale del sito web ownCloud. Non modificare questa impostazione AllowOverride Noneper siti non correlati /, /var/wwwo altri siti non correlati, semplicemente per silenziare l'avviso.

Testare, ricaricare e verificare

Su Debian o Ubuntu, ownCloud documenta mod_rewritecome richiesto per la sua configurazione Apache. Se non è abilitato, abilitalo con:

sudo a2enmod rewrite

Quindi, verifica la configurazione prima di applicarla:

sudo apachectl -t

Proseguire solo se Apache segnala un errore Syntax OK. Riavviare Apache in modo che legga il vhost aggiornato:

sudo systemctl reload apache2

Sulle distribuzioni che utilizzano il nome del servizio, utilizzare invece i comandi configuration-test e reload di tale distribuzione. Tornare a Impostazioni > Amministrazione > Panoramicahttpd di ownCloud e aggiornare la pagina. L'avviso dovrebbe scomparire se Apache sta leggendo il vhost modificato ed elaborando il file di ownCloud ..htaccess

Un terminale Linux che esegue a2enmod rewrite e mostra che il modulo rewrite di Apache è abilitato
Se il comportamento di riscrittura di ownCloud è incluso nell'avviso, verifica che il modulo di riscrittura di Apache sia abilitato.
Un terminale Linux che mostra apachectl -t che restituisce Syntax OK prima di ricaricare Apache
Prima di riavviare il servizio, convalidare la configurazione di Apache.
Una pagina di panoramica amministrativa in stile ownCloud senza alcun avviso AllowOverride visibile.
Dopo il ricaricamento, rivedi la Panoramica di amministrazione e verifica se l'avviso relativo al file .htaccess è scomparso.

Se l'avvertimento persiste

  • Verifica il vhost attivo. Esegui sudo apachectl -Snuovamente il comando e conferma che il file modificato appartenga all'hostname e alla porta utilizzati da ownCloud. Una AllowOverride Allriga in un blocco non corrispondente non ha alcun effetto.
  • Verifica il percorso e la sezione esatti. Conferma che il blocco sia una <Directory /path/to/owncloud/>sezione letterale e che il percorso corrisponda alla directory di installazione. Apache ignora AllowOverridein .htaccesse <Location>.
  • Rigenera le regole di ownCloud obsolete solo quando necessario. Se il vhost è corretto ma le regole di riscrittura di ownCloud necessitano di un aggiornamento, consulta la relativa documentazione occ maintenance:update:htaccess. Esegui il comando dalla directory di ownCloud come utente del server web, ad esempio sudo -u www-data php occ maintenance:update:htaccess. L'utente del server web deve disporre dei permessi di scrittura per il .htaccessfile fornito per questo aggiornamento. Non rendere il file scrivibile da tutti; correggi la proprietà o i permessi in base alle istruzioni della tua installazione.
  • Dopo un errore 500, consulta il log degli errori di Apache. Un controllo di sintassi convalida la configurazione principale di Apache, ma una direttiva .htaccesspuò comunque fallire se il modulo corrispondente è mancante o se la direttiva non è consentita. Utilizza il log degli errori per identificare il modulo o la regola specifica.

La configurazione URL senza index.php documentata da ownCloud richiede anche mod_rewrite, mod_env, e una directory radice scrivibile .htaccess; si tratta di una configurazione di riscrittura correlata, non di un motivo per estendere le sovrascritture oltre la directory di ownCloud. Se la tua configurazione utilizza PHP-FPM, segui le attuali linee guida di ownCloud per tale installazione anziché modificare i gestori PHP per risolvere un avviso di sovrascrittura di Apache. Se l'avviso indica che la directory dei dati potrebbe essere accessibile pubblicamente, verifica che la directory dei dati si trovi al di fuori della directory radice del sito web o che sia protetta anche da una regola Apache esplicita; la .htaccesssola rimozione dell'avviso non è una prova che i file privati ​​non possano essere richiesti direttamente.

Per informazioni documentate sul comportamento e sui limiti della piattaforma, consultare le linee guida di ownCloud relative agli URL senza index.php e il relativo manuale di riferimento dei comandi OCC .

Lascia un commento

Elimina in modo sicuro l'avviso relativo al file .htaccess di ownCloud Apache

Elimina in modo sicuro l'avviso relativo al file .htaccess di ownCloud Apache

Imposta AllowOverride All solo per la directory principale del sito web di ownCloud, verifica il vhost Apache attivo e riavvia il sito in modo sicuro per ripristinare le regole .htaccess.

Configura il controllo degli accessi di ownCloud Enterprise e verifica i registri.

Abilita l'app Enterprise Auditing di ownCloud, instrada gli eventi admin_audit a un file di registro protetto e verifica che vengano registrate le azioni reali degli utenti.

Collega ownCloud Infinite Scale a Keycloak tramite OIDC.

Collega ownCloud Infinite Scale a Keycloak tramite OIDC.

Allineare l'emittente del realm, il client web e le attestazioni utente di Keycloak consente a ownCloud Infinite Scale di autenticare gli utenti in modo affidabile su client web e mobile.

Spostare i file di ownCloud a un nuovo proprietario senza perdere le condivisioni

Trasferisci i file di tua proprietà e le cartelle condivise in uscita con il comando occ di ownCloud, scopri cosa rimane e verifica l'accesso prima di eliminare il vecchio account.

Velocizza le query di ownCloud 10 gestendo gli indici in modo sicuro

Scopri quando gli indici del database di ownCloud 10 necessitano di attenzione, come applicare in modo sicuro gli aggiornamenti dello schema supportati e quando l'ottimizzazione delle query o una modifica del database rappresentano la soluzione migliore.

Montare una condivisione SMB/CIFS in ownCloud senza utilizzare un mount Linux

Collega una condivisione di rete Windows o Samba a ownCloud tramite l'archiviazione esterna, verifica le credenziali e risolvi in ​​modo sicuro i problemi relativi alle cartelle inaccessibili.

Elimina in modo sicuro le versioni dei file di ownCloud con il comando occ

Elimina in modo sicuro le versioni dei file di ownCloud con il comando occ

Rimuovere tutte le versioni dei file di ownCloud Server Classic memorizzate per un singolo account o per tutti gli utenti, e distinguere tra eliminazione completa e scadenza basata sulla conservazione.

Connessione mobile ownCloud rifiutata? Verifica URL e raggiungibilità

Connessione mobile ownCloud rifiutata? Verifica URL e raggiungibilità

Per individuare la causa di un rifiuto di connessione mobile di ownCloud, verifica l'URL del server, la rete telefonica, l'endpoint HTTPS e i log del server nell'ordine corretto.

Esegui in modo affidabile i processi in background di ownCloud con un timer Systemd

Sostituisci le esecuzioni dei processi su richiesta con un timer systemd che esegue il comando occ system:cron supportato da ownCloud ogni 15 minuti.

Ripristina la sincronizzazione WebDAV di ownCloud individuando il percorso interrotto

Traccia la richiesta WebDAV attraverso Apache, Nginx o un proxy inverso, quindi verifica che la sincronizzazione di ownCloud funzioni con un test PROPFIND autenticato.