2010-05-07 8 views
7

Alcuni retroscena:Wordpress 403/404 Errori: Non si dispone dell'autorizzazione per accedere /wp-admin/themes.php su questo server

I ha installato sei i blog di questa settimana, il tutto utilizzando Wordpress 2.92, installato con Fantastico su un piano baby croc con Hostgator.

Ho utilizzato lo stesso tema (heatmap 2.5.4) e plug-in per ogni blog.

Erano tutti operativi, senza problemi.

vado per creare un nuovo blog di questa mattina, con la stessa messa a punto, e quando provo a cambiare le impostazioni del tema, ottengo il seguente errore:

Forbidden 

You don't have permission to access /wp-admin/themes.php on this server. 

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request. 

Apache/2.2.15 (Unix) mod_ssl/2.2.15 OpenSSL/0.9.8n DAV/2 mod_fcgid/2.3.5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 Server at http://www.mydomain.com Port 80 

Ho provato a disinstallare WP e facendo un pulito installare, ancora lo stesso problema con un'installazione pulita.

Quindi sono tornato indietro e ho controllato gli altri sei blog che avevo installato nell'ultima settimana o giù di lì, e ora mi stanno dando anche errori 403 o 404 quando provo a cambiare le impostazioni del tema, e ogni volta c'è un errore che punta a themes.php o functions.php

A questo punto sono alla mia intelligenza cercando di capire quale sia il problema. Il supporto di Hostgator l'ha guardato e ha pensato che forse si trattava di un problema di autorizzazioni, ma hanno ripristinato quelle e sto ancora avendo il problema. All'inizio pensavo che il problema potesse essere collegato a un plug-in che ho installato recentemente sui sei blog precedenti quella mattina (ByREV Fix Missed Shedule Plugin) per gestire un errore di programmazione mancato con WP 2.92, e che forse aveva cose masticate. Ma poi ho controllato un blog che avevo costruito mesi fa, usando anche lo stesso tema e i plugin, e ora anche questo incontra lo stesso problema.

Qualche idea? Ho provato a cancellare il mio .htaccess, il caricamento di uno vuoto, il caricamento di uno con questo frammento che ho trovato sul forum hostgator:

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

# END WordPress 

Niente ha funzionato. Ottengo sempre errori 403 o 404 ogni volta. Tutto ha funzionato perfettamente ieri, quindi so che questa configurazione FUNZIONA, ho appena messo qualcosa da qualche parte e non ho idea di cosa sia.

Ho letto un thread correlato qui e ho provato a chmodificare la cartella del wp-content a 0755 e ho ancora il problema.

Qualche idea? Grazie!

+1

hai controllato tutti i file .htaccess (potrebbero essercene più di uno) e si collegano in cascata dalla radice in giù. Hai apportato altre modifiche all'installazione, ai plug-in, ecc. –

+0

L'unica modifica che ho apportato dopo aver installato i sei blog precedenti e prima di creare il nuovo blog era installare un plug-in che controlla i post che hanno perso l'ora/data di registrazione pianificata e li obbliga ad andare avanti e ad essere pubblicato. Ho installato quel plugin su tutti e sei i blog perché c'è un bug in WP 2.92 che stava causando messaggi persi. – Glen

+0

Non sono sicuro di come questo plugin sia in grado di fare quello che fa, forse ha cambiato alcune autorizzazioni da qualche parte?Ho controllato un blog che ho installato mesi fa, che NON ha il plug-in programmato, ma usa lo stesso tema, e incontra anche un errore durante l'accesso a themes.php Ho controllato per i file htaccess, è necessario per lì essere più di uno, o dovrebbe essercene uno solo per il mio dominio di root? – Glen

risposta

0

Il primo errore che stai ricevendo - permessi - è la più indicativa. Bump wp-content e wp-admin a 777 e provatelo, e se funziona, quindi cambiarli entrambi in 755 e vedere se funziona ancora. Cosa stai usando per cambiare i permessi della cartella? Un client FTP?

+0

Sto utilizzando FireFTP per Firefox come client FTP.Quando cambio i permessi, mi dà la possibilità di cambiare i permessi solo per quella directory, ma anche sottodirectory e tutto il contenuto. Devo cambiare le autorizzazioni per tutti i contenuti? Ho cambiato entrambi i contenuti inclusi in 777, ora ricevo un errore di server interno 500 quando provo ad accedere a Wordpress. – Glen

+1

No, non anche i contenuti, ma che possono essere modificati in seguito. 500 errori provengono dal tuo .htaccess; come lo stai modificando? Con un editor di testo semplice? 500 errori possono essere causati utilizzando la codifica dei caratteri sbagliata nel tuo editor di testo. Se hai appena modificato .htaccess e non hai aggiornato i permalink all'interno dell'amministratore di WP, ciò significa che i tuoi permalink sono impostati su una cosa nel database WP e un'altra in .htaccess. Elimina .htaccess per eliminare i 500 errori e vedere dove sei. – markratledge

+0

Ho usato il blocco note quando l'ho modificato. Quando ho iniziato a studiare questo problema, l'htaccess aveva il wordpress # Beg e il wordpress #end, ma niente tra loro. Il file era vuoto altrimenti. Ho eseguito il backup e cancellato tutto l'htaccess che ho trovato dal dominio principale fino al dominio in cui è ospitata l'installazione di WP, ma ho ancora il problema originale con un 404. – Glen

0

Hai provato:

<Directory /path/to/your/wp-admin> 
Order allow,deny 
Allow from all 
</Directory> 
+2

Quindi dovrei creare un htaccess usando quello? Dove dovrei caricarlo, alla radice del dominio? – Glen

1

Sei fortunato bud ... Ho avuto lo stesso problema ma avevo più conoscenze tecniche sull'argomento ed è stato in grado di determinare che si trattava di un problema mod_sec che l'hostgator deve risolvere/whitelist per conto proprio. Non puoi farlo da solo. Basta chiedere al tecnico hostgator di controllare le impostazioni mod_sec sul tuo server.

Godetevi il problema fisso; D

2

Basta dare un seguito, problema risolto!Ho menzionato le impostazioni di mod_sec per il mio server come possibili colpevoli come suggerito e sono stati in grado di risolvere questo problema. Ecco ciò che l'agente tecnico ha detto di dire loro quando si va a sostenere:

Just let them know you need the rule 340163 whitelisted for domain.com as its hitting a mod_sec rule.

A quanto pare si avrà bisogno di fare questo per ogni dominio che sta avendo il problema, ma funziona. Grazie per tutti i suggerimenti a tutti!

+0

Grazie Glen. Stavo vivendo un problema simile e ho contattato l'hostgator e hanno detto che hanno fatto un qualche tipo di aggiornamento della seucity e che hanno elencato il dominio in bianco. Ma ha anche indicato che dovrebbe aggiustare tutto in quell'unico account del cpanel. –

+0

Grazie, ho avuto lo stesso problema e la tua risposta mi ha fatto comunicare con i miei provider di hosting. Questo è esattamente ciò che mi ha detto il rappresentante: "LiveSupport_t3: Mi spiace che tu non abbia accesso alla shell e che io abbia impostato le impostazioni di sicurezza in modalità per il tuo problema" –

0

Speriamo che le persone trovino questa risposta perché ci sono molti, molti post su questo sul web. Molte persone hanno suggerito che fosse un problema .htaccess, e per me lo era. Comunque, stavo cercando nel .htaccess nella root, non nel .htaccess nella cartella wp-admin. Normalmente, io lavoro su questo sito in particolare attraverso i servizi di terminale, così quando ho avviato me e non ho potuto accedere di nuovo, stavo cercando di accedervi dal mio computer di casa (ed è IP).

Stupido, ho dimenticato la restrizione IP che avevo inserito nel file .htaccess di wp-admin.

AuthName "Protected" 
AuthType Basic 
<Limit GET POST> 
order deny,allow 
deny from all 
allow from 11.11.11.11 
</Limit> 

Se hai qualcosa di simile nei file .htaccess wp-admin, che sarebbe facilmente spiegare perché tutti i siti si lavora cessato di funzionare allo stesso tempo. I provider Internet occasionalmente ruotano gli IP in modo che nessuno stia eseguendo un server da casa senza pagare per questo.

20

Pochi anni di ritardo, ma ho una soluzione per la versione più recente di WordPress, che ha lo stesso problema (i file .htaccess generati da WordPress interrompono i siti, riempiendo in 403 messaggi di errore vietati). Ecco come appare quando WordPress lo crea:

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

# END WordPress 

Il problema è che il condizionale non funziona. Non funziona perché il modulo che sta cercando non è .c, è .so. Penso che si tratti di un problema specifico della piattaforma o specifico della configurazione, in cui le installazioni di Mac OS e Lunix Apache sono configurate per i moduli 'shared-object' di .so AKA. Cercare un modulo .c non dovrebbe infrangere il condizionale, penso che sia un bug, ma è il problema.

Basta cambiare il mod_rewrite.c in mod_rewrite.so e tutto è pronto!

# BEGIN WordPress 
<IfModule mod_rewrite.so> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

# END WordPress 
+0

per favore non usare questo su multisito – NineCattoRules

0

Ho avuto lo stesso problema, ma niente ha funzionato sopra ... provare una soluzione molto semplice ...

Eseguire il backup del file .htaccess. Cancellalo dalla tua directory principale. Quindi prova ad accedere a quelle directory. È probabile che qualsiasi condizione di riscrittura presente nel file causasse tali problemi di accesso. La pagina indice dovrebbe essere prelevata automaticamente sulla maggior parte degli host. : P

Problemi correlati