web-dev-qa-db-fra.com

Comment afficher une page HTML statique lors de la configuration d'un site WordPress?

Je viens d'installer Wordpress. J'ai une page de démarrage non Wordpress à [dossier racine] /index.html. J'aimerais que la page de garde s'affiche pendant que je travaille sur le skinning de Wordpress. Lorsque j'essaie d'accéder à index.php (également dans le dossier racine), il réécrit l'URL en index.html. Je ne vois pas index.html dans l'URL, mais la page de démarrage est là et je ne vois jamais Wordpress.

Je suis en mesure d'accéder à l'administrateur Wordpress sans problème. Quelqu'un sait comment je peux accéder à Wordpress sans le mettre en ligne?

8
4thSpace

Utilisez un plugin (comme wp-maintenance-mode ) ou codez en dur votre fichier .htaccess pour le rediriger vers la page de démarrage et laissez votre adresse IP (ou celle de votre équipe) ignorer la redirection. Comme ça:

<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>

En ce qui concerne votre doute sur la raison pour laquelle index.html est servi à partir de la racine, c’est parce qu’il prime généralement sur index.php. Si vous voulez changer cela, vous devrez changer DirectoryIndex.

EDIT: Je pensais que c'était évident, mais pour plus de clarté: 127.0.0.1 devrait être remplacé par votre adresse IP publique. Notez également que 302 est une redirection temporaire, ce que nous souhaitons.

6
Sunyatasattva

Essaye ça.

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

Je n'ai pas utilisé index.html car ce nom de fichier revêt une importance particulière pour le serveur. Le '307' est un code d'état qui signifie redirection temporaire. J'ai supposé que le rôle 'administrateur' a besoin d'un accès :)

1
s_ha_dum

Je pense que la méthode la plus simple pour y parvenir consiste à éditer le fichier .htaccess dans le répertoire Web racine et à le placer en haut:

DirectoryIndex index.html index.php

Cela échange l'ordre de priorité dans lequel Apache choisit le fichier à utiliser.

1
Jayden Lawson

Cela fonctionne parfaitement . Ajouter un nouveau dossier de plugin avec ce fichier sous le nom index.php.

Du fil de soutien:

"Pour répondre à la question initiale, vous pouvez désactiver la redirection canonique en la mettant dans votre répertoire plugins -"

<?php
/*
Plugin Name: Disable Canonical URL Redirection
Description: Disables the "Canonical URL Redirect" features of WordPress 2.3 and above.
Version: 1.0
Author: Mark Jaquith
Author URI: http://markjaquith.com/
*/ 

remove_filter('template_redirect', 'redirect_canonical'); 

?>

Cela semblait aider beaucoup de gens là-bas, et pourrait être une bonne réponse ici aussi.

0
4thSpace

Essayez ceci sur votre fichier htaccess:

DirectoryIndex index.html index.php

Ce code signifie qu'Apache recherchera d'abord index.html, et s'il n'existe pas, recherchera index.php.

0
gtamborero