web-dev-qa-db-fra.com

Problèmes d'installation sur un serveur sans nom de domaine

Est-il possible d'installer WordPress sur un serveur public qui n'a pas encore de nom de domaine configuré? Je pensais l'avoir configurée sur IP uniquement et j'avais la ligne server_name _; dans ma configuration Nginx. Je pense que c’est pour cette raison que l’installation de WordPress s’éteint à wp-admin/install.php?step=2 et je vois l’erreur suivante dans les journaux de Nginx:

2017/01/08 07:24:53 [error] 25686#25686: *22 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught phpmailerException: Invalid address: wordpress@_ in /home/ankush/wp_main_site/wp-includes/class-phpmailer.php:946
Stack trace:
#0 /home/ankush/wp_main_site/wp-includes/pluggable.php(352): PHPMailer->setFrom('wordpress@_', 'WordPress', false)
#1 /home/ankush/wp_main_site/wp-admin/includes/upgrade.php(395): wp_mail('dkasolutions.sa...', 'New WordPress S...', 'Your new WordPr...')

Est-ce qu'un nom de domaine est indispensable ou est-ce que je fais quelque chose de mal?

6
dotslash

Définissez server_name sur l'adresse IP, par exemple:

server {
    listen   80;
    server_name 0.1.2.3;
    // other stuff
}

Vous pouvez également l'omettre, car la valeur par défaut dans ngninx est une chaîne vide. Mais alors, toutes les pièces de WordPress qui ne valident pas $_SERVER['SERVER_NAME'] et des valeurs similaires… vont tout simplement casser.

Voir ticket # 25239 pour les progrès réalisés sur ce front.

Si seulement WordPress avait un objet Request, comme tout le monde. Il serait alors facile de préparer toutes ces valeurs globales. Voir Symfony pour un exemple .

1
fuxia

Est-il possible d'installer WordPress sur un serveur public qui n'a pas encore de nom de domaine configuré?

Oui.

Je pensais l'avoir configurée sur IP uniquement et j'avais la ligne nom_serveur _; dans ma configuration Nginx.

Vous pouvez utiliser le nom du serveur que vous aimez, par exemple.

server_name tattarrattat.com;

Votre installation WordPress peut connaître le nom du serveur tattarrattat.com.

De votre côté, vous pouvez définir dans votre fichier /etc/hosts quelque chose comme ceci.

1.2.3.4 tattarrattat.com

Où 1.2.3.4 est l'adresse IP de votre serveur. Alors même si vous avez testé sur un serveur distant, vous utilisiez le domaine que vous aimez.


Vous pouvez également utiliser Extension Hôtes virtuels dans Chrome, lors de la prévisualisation du site Web.

0
prosti