web-dev-qa-db-fra.com

WordPress Échec de l'installation

J'essaie d'installer Wordpress sur Lubuntu. J'ai suivi les instructions ici . Incluant PHP les configurations Apache et MySQL. Apache et MySQL semblent fonctionner correctement.

Cependant, quand je vais à http://localhost/blog/, j'obtiens l'erreur suivante:

Ni /etc/wordpress/config-localhost.php ni /etc/wordpress/config-localhost.php n'ont pu être trouvés. Assurez-vous que l'un d'entre eux existe, est lisible par le serveur Web et contient le bon mot de passe/nom d'utilisateur.

6
TeKola

J'ai joué ce guide pas à pas. Et je pense que dans votre cas, quelque chose a mal tourné et que le fichier /etc/wordpress/config-localhost.php est en réalité absent. Mais ce n'est pas la pire chose. Il manque dans le manuel une étape décrivant comment créer une base de données MySQL et un utilisateur pour WordPress - le résultat final . La procédure à suivre est décrite dans l'article WordPress de la documentation officielle Ubunt . Une autre approche est présentée à l’étape 1 ci-dessous.

Cependant, à mon avis, l’approche décrite dans les manuels déjà cités rend les choses plus compliquées qu’elles le sont réellement. De plus, les deux manuels ne fournissent pas suffisamment d'explications pour comprendre ce qui se passe. Voici un guide pour vous:

Comment installer la dernière WordPress sur Ubuntu 16.04 avec LAMP


Pré-requis

La pile Ubuntu LAMP standard, cela signifie que nous travaillons avec Apache2, MySQL, PHP. Refs:

En plus des extensions PHP suivantes, mod_rewrite pour Apache2 doit également être activé:

Sudo apt update
Sudo apt install libapache2-mod-php7.0 # of just: libapache2-mod-php
Sudo apt install php-curl php-Gd php-mbstring php-mcrypt php-xml php-xmlrpc
Sudo a2enmod rewrite php7.0

1. Créer une base de données MySQL

Les étapes sont les suivantes:

  • Connectez-vous au serveur MySQL depuis un terminal.
  • Créer une base de données.
  • Créer un utilisateur.
  • Accorder tous les privilèges sur la base de données à l'utilisateur.
  • Rechargez les privilèges à partir des tables d'attribution de la base de données mysql.
  • Quittez MySQL.

Les commandes sont:

$ mysql -u'root' -p                                                  

mysql> CREATE DATABASE DataBaseName;
mysql> CREATE USER 'DataBaseUser'@'localhost' identified by 'DataBaseUserPassword';
mysql> GRANT ALL PRIVILEGES ON DataBaseName.* TO 'DataBaseUser'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> exit
  • DatabaseName, DatabaseUser et DatabaseUserPassword sont soumis à votre décision.

    Selon l'exemple, l'utilisateur sera autorisé à accéder à la base de données uniquement à partir de l'hôte local, cela suffit ( et safety ) lorsque les serveurs Apache et MySQL sont alloués sur le même serveur physique machine.

  • Ne manquez pas le point-virgule (;) à la fin de chaque phrase. Si vous êtes sur Ubuntu 18.04+, où l’authentification du socket est la méthode d’authentification par défaut pour MySQL, utilisez Sudo mysql pour vous connecter en tant que root.


2.A. Téléchargez la dernière version de WordPress

Les étapes sont les suivantes:

  • Allez dans le répertoire où WordPress sera stocké.

    Le répertoire utilisé ici est /var/www - il s’agit du répertoire par défaut dans lequel le contenu Web doit être stocké dans les versions actuelles d’Ubuntu.

  • Téléchargez la dernière version.

  • Décompressez et décompressez le paquet, puis supprimez-le.

  • Renommez le dossier. Cette étape n'est pas obligatoire.

    J'utilise généralement le même nom pour le répertoire d'installation , le nom de la base de données et le nom du fichier de configuration de l’hôte virtuel . De plus, ces noms sont basés sur le nom de domaine s'il en existe un dédié.

  • Créez le répertoire upload.

  • Créez un fichier .htaccess vide.

    WordPress écrira des caractères de réécriture , en fonction de vos préférences. À cette fin, ce fichier doit pouvoir être écrit (ou appartenir à) par www-data, ainsi que mod_rewrite doit être activé et l'utilisation du fichier .htaccess doit être autorisée par la configuration de l'hôte virtuel - la directive AllowOverride All.

  • Changez la propriété du répertoire WordPress.

    WordPress a des mécanismes pour la mise à jour automatique et l'installation automatique de plugins, et j'ai trouvé que jouer avec les permissions et la propriété est une tâche compliquée. La plupart des manuels en tant que propriétaire du contenu de WordPress sont suggérés www-data.

Les commandes sont:

cd /var/www/

Sudo wget https://wordpress.org/latest.tar.gz
Sudo tar xvfz latest.tar.gz && Sudo rm ./latest.tar.gz*
Sudo mv wordpress wordpress-custom-folder
Sudo mkdir -p /var/www/wordpress-custom-folder/wp-content/uploads
Sudo touch /var/www/wordpress-custom-folder/.htaccess

Sudo chown -R www-data:www-data /var/www/wordpress-custom-folder

2.B. Installer WordPress à partir des référentiels Ubuntu

Une autre façon d’installer WordPress consiste à utiliser les référentiels Ubuntu, comme il est décrit here et here . Mais (dans buntu 16.04 ), la commande apt show wordpress indique que la version du référentiel est 4.4.2 alors que la version actuelle est 4.8.1. Étant donné que WP dispose d'un mécanisme de mise à jour automatique, il vous oblige à mettre à jour cette version obsolète à la dernière. Vous vous retrouverez donc avec la version 4.8, mais après quelques étapes de mises à jour où quelque chose pourrait mal tourner.

Le principal avantage de cette approche est que le processus d’installation de WordPress impliquera des dépendances, comme celles-ci, mentionnées en haut de ce post.


3.A. Configuration Apache2: Créer un hôte virtuel, dédié à WordPress particulier

  • Suivez cette section s'il y a un nom de domaine ou de sous-domaine dédié et que le site WordPress sera accessible via l'URL sous la forme: http://my-domain.com ou http://someprefix.my-domain.com.

  • Si vous n'avez pas l'intention de faire fonctionner d'autres sites dans un avenir proche, éditez simplement 000-default.conf au lieu d'une nouvelle création d'hôte virtuel.

  • Si vous n'avez pas de nom de domaine enregistré, mais que vous souhaitez accéder à votre site WP via un nom de domaine au lieu d'une adresse IP (ou localhost), vous pouvez ajouter une ligne comme suit quelque part dans le /etc/hosts fichier (plus de détails sont fournis dans cette réponse ):

    127.0.0.1    my-domain.com someprefix.my-domain.com
    

Créez et éditez un nouveau fichier de configuration d'hôte virtuel:

Sudo nano /etc/Apache2/sites-available/wordpress.conf
  • La première partie du nom du fichier de configuration - wordpress. - fait l'objet de votre décision.

Le contenu du fichier devrait ressembler à ceci:

<VirtualHost *:80>

    ServerName someprefix.my-domain.com
    ServerAlias my-domain.com 

    # If this is the default configuration file we can use: 'ServerName localhost' or also 'ServerAlias localhost'.

    ServerAdmin [email protected]

    ErrorLog ${Apache_LOG_DIR}/someprefix.my-domain.com.error.log
    CustomLog ${Apache_LOG_DIR}/someprefix.my-domain.com.access.log combined

    DocumentRoot /var/www/wordpress-custom-folder

    <Directory /var/www/wordpress-custom-folder>
        Options None FollowSymLinks
        # Enable .htaccess Overrides:
        AllowOverride All
        DirectoryIndex index.php
        Order allow,deny
        Allow from all
        Require all granted
    </Directory>

    <Directory /var/www/wordpress-custom-folder/wp-content>
        Options FollowSymLinks
        Order allow,deny
        Allow from all
    </Directory>

</VirtualHost>
  • Copiez le contenu ci-dessus et utilisez-le dans nanoShift+Insert pour la pâte; Ctrl+O et Enter pour sauver; Ctrl+X pour la sortie.

Activez la configuration et redémarrez Apache2:

Sudo a2ensite wordpress.conf
Sudo systemctl restart Apache2.service

3.B. Installer Apache2: Ajouter WordPress à un hôte virtuel existant

  • Suivez cette section s’il existe not le nom de domaine ou de sous-domaine dédié et que le site WP sera accessible via l’URL sous la forme: http://my-domain.com/my-blog ou http://localhost/my-blog, etc.

  • Dans les deux manuels mentionnés ( this et this ), WP est ajouté à tous les hôtes virtuels activés.

Editez le fichier de configuration existant de l'hôte virtuel de cette manière:

<VirtualHost ...>
.....

    Alias /my-blog /var/www/wordpress-custom-folder

    <Directory /var/www/wordpress-custom-folder>
        Options None FollowSymLinks
        # Enable .htaccess Overrides:
        AllowOverride All
        DirectoryIndex index.php
        Order allow,deny
        Allow from all
        Require all granted
    </Directory>

    <Directory /var/www/wordpress-custom-folder/wp-content>
        Options FollowSymLinks
        Order allow,deny
        Allow from all
    </Directory>

</VirtualHost>
  • Explication sur la directive Alias ​​. Supposons que DocumentRoot soit /var/www/html. Dans ce cas, la directive Alias /my-blog /var/www/wordpress-custom-folder servira de lien symbolique:

     ln -s /var/www/wordpress-custom-folder /var/www/html/my-blog
    

Activez la configuration (si elle n’est pas activée) et redémarrez Apache2:

Sudo a2ensite 000-default.conf         # or type the name of your configuration file
Sudo systemctl restart Apache2.service

4. Procédez à l'installation Web de WordPress

Accédez à l’URL http://someprefix.my-domain.com ou http://localhost/my-blog/ dans votre navigateur Web. Le programme d'installation WordPress apparaîtra. Les données sur la base de données MySQL, créée à l’étape 1, doivent y être fournies.

C'est ça.


Installer une autre instance

Pour exécuter une autre instance de WP, suivez les étapes une fois de plus et utilisez des données uniques en fonction de la nouvelle instance:

  • Créer une nouvelle base de données. Vous pouvez créer et créer un nouvel utilisateur MySQL.

  • Téléchargez WP dans un nouveau répertoire dans /var/www.

  • Créez un nouvel hôte virtuel si vous utilisez l'approche 3.A ou, si vous utilisez 3.B, configurez les nouvelles définitions Alias chemin et nouvelles <Directory>.

  • Passez à l'installation Web du nouveau WP.


Références


Lectures complémentaires

10
pa4080