Come visualizzare una pagina HTML statica durante la configurazione di un sito WordPress?

29 nov 2012, 17:03:28
Visualizzazioni: 27.4K
Voti: 9

Ho appena installato WordPress. Ho una pagina splash non WordPress in [cartella root]/index.html. Vorrei mantenere attiva la pagina splash mentre lavoro alla personalizzazione di WordPress. Quando provo ad accedere a index.php (anch'esso nella cartella root), l'URL viene riscritto in index.html. Non vedo index.html nell'URL ma la pagina splash viene visualizzata e non riesco mai a vedere WordPress.

Riesco ad accedere all'area di amministrazione di WordPress senza problemi. Qualcuno sa come posso accedere a WordPress senza renderlo pubblico?

1
Commenti

Potresti utilizzare il plugin WordPress Under Construction.

realloc realloc
29 nov 2012 17:17:29
Tutte le risposte alla domanda 5
7

Puoi utilizzare un plugin (come wp-maintenance-mode) oppure modificare manualmente il file .htaccess per reindirizzare alla pagina di manutenzione, consentendo al tuo IP (o a quello del tuo team) di ignorare il reindirizzamento. Ecco come fare:

<IfModule mod_rewrite.c>

RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1
RewriteCond %{REQUEST_URI} !/splashpage.html$ [NC]
RewriteRule .* /maintenance.html [R=302,L]

</IfModule>

Riguardo al tuo dubbio sul perché index.html venga servito dalla root, è perché solitamente ha la precedenza su index.php. Se vuoi modificare questo comportamento, devi cambiare il parametro DirectoryIndex.

EDIT: Pensavo fosse ovvio, ma per chiarezza: 127.0.0.1 dovrebbe essere sostituito con il tuo indirizzo IP pubblico. Inoltre, nota che 302 è un Reindirizzamento Temporaneo, che è esattamente ciò che vogliamo.

29 nov 2012 17:21:20
Commenti

Poiché non posso commentare le risposte altrui, vorrei solo affermare che apprezzo molto la risposta di @s_ha_dum ma dovresti fare attenzione in quanto il Wordpress Codex dichiara chiaramente:

Non passare un nome di ruolo a current_user_can(), poiché non è garantito che funzioni correttamente.

Sunyatasattva Sunyatasattva
29 nov 2012 17:25:34

Ho provato il tuo suggerimento ma non ha avuto effetto. Voglio che venga visualizzato index.html. Voglio anche poter accedere manualmente alla pagina Wordpress index.php. Ma questo causa il reindirizzamento a index.html. Non sono sicuro del perché tu dica "reindirizzamento alla pagina splash". È esattamente ciò che non voglio che accada. Anche se cancello completamente .htaccess, finisco comunque con i rewrite.

4thSpace 4thSpace
29 nov 2012 17:43:55

@Sunyatasattva, il codice sorgente dice "@param string $capability Capability o nome del ruolo.". Mi chiedo quando sia stato aggiunto al Codex, o da chi?

s_ha_dum s_ha_dum
29 nov 2012 19:13:27

@4thSpace Per come avevo capito, volevi avere accesso completo a WordPress senza che fosse online e reindirizzare gli utenti non autorizzati a una pagina di benvenuto personalizzata che hai chiamato index.html. Quando dicevo "reindirizzare alla pagina di benvenuto" intendevo reindirizzare altri utenti a quella pagina, non te stesso. Prima di tutto, perché il mio suggerimento funzioni, hai modificato il 127.0.0.1 con il tuo IP pubblico?

Sunyatasattva Sunyatasattva
29 nov 2012 20:08:32

Sì - ho cambiato il mio IP pubblico.

4thSpace 4thSpace
29 nov 2012 20:15:13

@s_ha_dum In effetti hai ragione. Forse l'avviso si riferisce al fatto che passare il nome del ruolo in maiuscolo non funzionerà correttamente, da qui "non garantito"? Non sono sicuro.

Sunyatasattva Sunyatasattva
29 nov 2012 20:15:18

@4thSpace Allora dovresti essere in grado di visualizzare correttamente index.php come quando accedi alla radice. Prova a rinominare index.html in qualcosa che non abbia un significato particolare per il server (come splashpage.html). Inoltre, prova a cambiare l'indirizzo IP consentito per verificare se gli utenti non autorizzati vengono correttamente reindirizzati alla tua splash page.

Sunyatasattva Sunyatasattva
29 nov 2012 20:17:07
Mostra i restanti 2 commenti
1

Penso che il modo più semplice per ottenere questo risultato sia modificare il file .htaccess nella directory principale del sito web e inserire questo codice all'inizio:

DirectoryIndex index.html index.php

Questo scambia l'ordine di priorità con cui Apache sceglie quale file utilizzare.

4 set 2017 11:59:56
Commenti

soddisfa la mia esigenza di aggiungere pagine wp a un sito html esistente con la pagina indice in html.

Sajal Sajal
5 dic 2018 15:52:12
0

Prova questo.

function temp_page_redirect() {
    if (!current_user_can('administrator')) {
        wp_safe_redirect('temp.html',307);
    }
}
add_action('template_redirect','temp_page_redirect');

Non ho usato index.html perché quel nome di file ha un significato speciale per il server. Il codice '307' è un codice di stato che significa reindirizzamento temporaneo. Ho assunto che il ruolo di 'administrator' necessiti l'accesso :)

29 nov 2012 17:20:41
2

Questo funziona perfettamente. Aggiungi una nuova cartella per il plugin con questo file come index.php.

Dal thread di supporto:

"Per rispondere alla domanda originale, puoi disattivare il reindirizzamento canonico inserendo questo nella tua directory dei plugin –"

<?php
/*
Plugin Name: Disabilita Reindirizzamento URL Canonico
Description: Disabilita le funzionalità di "Reindirizzamento URL Canonico" di WordPress 2.3 e versioni successive.
Version: 1.0
Author: Mark Jaquith
Author URI: http://markjaquith.com/
*/ 

remove_filter('template_redirect', 'redirect_canonical'); 

?>

Questo sembra aver aiutato molte persone lì, e potrebbe essere una risposta adatta anche qui.

29 nov 2012 17:59:00
Commenti

Un singolo link è considerato una risposta di scarsa qualità (vedi [FAQ#deletion]) poiché di per sé non ha significato e la risorsa di destinazione non è garantita che rimanga disponibile in futuro. Per favore prova a includere almeno un riassunto delle informazioni a cui stai collegando.

Rarst Rarst
26 mag 2013 22:21:25
  1. Apri il tuo sito con un programma FTP
  2. naviga fino a /wp-content/plugins/
  3. crea una nuova cartella con un nome a tua scelta
  4. crea un index.php e inserisci il codice PHP presente nei commenti del codice sopra (usa tutto ciò che è presente nel riquadro del codice sopra) e copialo nella tua nuova cartella
  5. visita il backend di WordPress e attiva questo nuovo plugin
Andy Andy
18 mar 2019 22:48:21
0

Prova questo nel tuo file htaccess:

DirectoryIndex index.html index.php

Questo codice significa che Apache cercherà prima index.html, e se non esiste cercherà index.php

15 feb 2019 18:19:19