One place for hosting & domains

      WordPress

      Comment installer WordPress sur Ubuntu 20.04 avec un LAMP Stack


      Introduction

      WordPress est une technologie open-source extrêmement populaire pour la création de sites web et de blogs sur l’internet aujourd’hui. Utilisés par 63 % des sites web qui utilisent un système de gestion de contenu (CMS), les sites WordPress représentent 36 % de tous les sites web qui sont actuellement en ligne.

      Il existe de nombreuses approches différentes pour accéder à WordPress et certains processus de configuration sont plus complexes que d’autres. Ce tutoriel est destiné à ceux qui souhaitent installer et administrer une instance de WordPress sur un serveur en nuage non géré via la ligne de commande. Bien que cette approche nécessite plus d’étapes qu’une installation WordPress toute faite, elle offre aux administrateurs un plus grand contrôle sur leur environnement WordPress.

      Si vous cherchez à accéder à une installation WordPress prête à l’emploi, DigitalOcean Marketplace propose une app en un clic pour vous aider à démarrer avec WordPress, jusqu’à l’installation lors de la mise en route de votre serveur.

      En fonction de vos besoins et de vos objectifs, vous pouvez trouver d’autres options plus adaptées. En tant que logiciel open-source, WordPress peut être téléchargé et installé gratuitement, mais pour être disponible sur le web, vous devrez probablement acheter une infrastructure en nuage et un nom de domaine. Continuez à suivre ce guide si vous êtes intéressé par l’installation côté serveur et par la mise en place d’un site WordPress.

      Ce tutoriel utilisera un LAMP (Linux, Apache, MySQL et PHP) stack qui est une option pour une architecture de serveur qui supporte WordPress en fournissant le système d’exploitation Linux, le serveur web Apache, la base de données MySQL et le langage de programmation PHP. Nous installerons et configurerons WordPress via LAMP sur un serveur Linux Ubuntu 20.04.

      Conditions préalables

      Pour pouvoir suivre ce tutoriel, vous devez avoir accès à un serveur Ubuntu 20.04 et effectuer les étapes suivantes avant de commencer ce guide :

      • Configurez votre serveur en suivant notre guide de configuration initiale du serveur Ubuntu 20.04 et assurez-vous d’avoir un non-root sudo user. 
      • Installez un LAMP stack en suivant notre guide LAMP pour installer et configurer ce logiciel.
      • Sécurisez votre site : WordPress prend en compte les entrées de l’utilisateur et stocke ses données, il est donc important pour lui d’avoir une couche de sécurité. TLS/SSL est la technologie qui vous permet de crypter le trafic de votre site afin que votre connexion et celle de vos utilisateurs soient sécurisées. Voici deux options qui s’offrent à vous pour répondre à cette exigence :
        • Si vous avez un nom de domaine… vous pouvez sécuriser votre site avec Let’s Encrypt, qui fournit des certificats gratuits et fiables. Suivez notre guide Let’s Encrypt pour Apache afin de configurer cela.
        • Si vous n’avez pas de domaine… et que vous utilisez cette configuration à des fins de test ou pour un usage personnel, vous pouvez à la place utiliser un certificat auto-signé. Cela permet d’obtenir le même type de chiffrement, mais sans la validation du domaine. Suivez notre guide SSL auto-signé pour Apache afin de le mettre en place.

      Une fois les étapes de préparation terminées, connectez-vous à votre serveur en tant qu’utilisateur sudo et continuez ci-dessous.

      Étape 1 – Créer une base de données MySQL et un utilisateur pour WordPress

      La première étape que nous allons suivre est une étape préparatoire. WordPress utilise MySQL pour gérer et stocker les informations du site et des utilisateurs. Nous avons déjà installé MySQL, mais nous devons créer une base de données et un utilisateur pour WordPress.

      Pour commencer, connectez-vous au compte MySQL root (administratif) en exécutant cette commande (notez que ce n’est pas le root user de votre serveur) :

      Le mot de passe que vous avez défini pour le compte root MySQL lors de son installation vous sera demandé.

      Note : Si vous ne pouvez pas accéder à votre base de données MySQL via le root, en tant que sudo user, vous pouvez mettre à jour le mot de passe de votre root user en vous connectant à la base de données de cette manière : 

      Une fois que vous recevez l’invite MySQL, vous pouvez mettre à jour le mot de passe du root user. Ici, remplacez new_password par un mot de passe fort de votre choix.

      • ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';

      Vous pouvez maintenant taper EXIT ; et vous pouvez vous reconnecter à la base de données via un mot de passe avec la commande suivante :

      Dans la base de données, nous pouvons créer une base de données exclusive que WordPress peut contrôler. Vous pouvez l’appeler comme vous le souhaitez, mais nous utiliserons le nom wordpress dans ce guide. Créez la base de données pour WordPress en tapant :

      • CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

      Remarque : chaque instruction MySQL doit se terminer par un point-virgule (;). Vérifiez qu’il est bien présent si vous rencontrez des problèmes.

      Ensuite, nous allons créer un compte utilisateur MySQL distinct que nous utiliserons exclusivement pour exploiter notre nouvelle base de données. La création de bases de données et de comptes spécifiques peut nous aider du point de vue de la gestion et de la sécurité. Nous utiliserons le nom wordpressuser dans ce guide, mais n’hésitez pas à utiliser le nom qui vous convient le mieux.

      Nous allons créer ce compte, définir un mot de passe et lui donner accès à la base de données que nous avons créée. Nous pouvons le faire en tapant la commande ci-dessous. N’oubliez pas de choisir un mot de passe fort ici pour l’utilisateur de votre base de données où nous avons password :

      • CREATE USER 'wordpressuser'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

      Ensuite, faites savoir à la base de données que notre wordpressuser devrait avoir un accès complet à la base de données que nous avons mise en place : 

      • GRANT ALL ON wordpress.* TO 'wordpressuser'@'%';

      Vous disposez désormais d’une base de données et d’un compte d’utilisateur, chacun spécialement conçu pour WordPress. Nous devons supprimer les privilèges afin que l’instance actuelle de MySQL soit informée des récents changements que nous avons apportés :

      Sortez de MySQL en tapant :

      Dans la prochaine étape, nous poserons quelques bases pour les plugins WordPress en téléchargeant des extensions PHP pour notre serveur.

      Étape 2 – Installez des extensions PHP supplémentaires

      Lors de la mise en place de notre pile LAMP, nous n’avons eu besoin que d’un ensemble très limité d’extensions pour que PHP puisse communiquer avec MySQL. WordPress et beaucoup de ses plugins utilisent des extensions PHP supplémentaires.

      Nous pouvons télécharger et installer certaines des extensions PHP les plus populaires pour WordPress en tapant :

      • sudo apt update
      • sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

      Cela permettra de préparer le terrain pour l’installation de plugins supplémentaires sur notre site WordPress.

      Remarque : chaque plugin WordPress a ses propres exigences. Certains peuvent nécessiter l’installation de packages PHP supplémentaires. Consultez la documentation de votre plugin pour connaître ses besoins en matière de PHP. S’ils sont disponibles, ils peuvent être installés avec apt comme illustré ci-dessus.

      Nous devrons redémarrer Apache pour charger ces nouvelles extensions, nous ferons d’autres configurations sur Apache dans la prochaine section, vous pouvez donc attendre jusque-là, ou redémarrer maintenant pour terminer le processus d’extension PHP.

      • sudo systemctl restart apache2

      Étape 3 – Ajuster la configuration d’Apache pour autoriser .htaccess à remplacer et réécrire

      Nous allons maintenant procéder à quelques ajustements mineurs de notre configuration Apache. Après avoir suivi les tutoriaux préalables, vous devez disposer d’un fichier de configuration pour votre site dans le répertoire /etc/apache2/sites-available/.

      Dans ce guide, nous utiliserons ici /etc/apache2/sites-available/wordpress.conf comme exemple, mais vous devez substituer le chemin d’accès à votre fichier de configuration le cas échéant. De plus, nous utiliserons /var/www/wordpress comme répertoire root de notre installation WordPress. Vous devez utiliser la racine Web spécifiée dans votre propre configuration. Si vous avez suivi notre tutoriel LAMP, il se peut que ce soit votre nom de domaine au lieu de wordpress dans ces deux cas.

      Remarque : il est possible que vous utilisiez la configuration par défaut 000-default.conf (avec /var/www/html comme racine Web). C’est une bonne solution si vous n’hébergez qu’un seul site web sur ce serveur. Sinon, il est préférable de diviser la configuration nécessaire en morceaux logiques, un fichier par site.

      Une fois nos chemins identifiés, nous pouvons passer à la collaboration avec htaccess afin qu’Apache puisse gérer les changements de configuration par répertoire. 

      Autoriser les remplacements .htaccess

      Actuellement, l’utilisation des fichiers .htaccess est désactivée. WordPress et de nombreux plugins WordPress utilisent ces fichiers de manière intensive pour des ajustements dans les répertoires du comportement du serveur web.

      Ouvrez le fichier de configuration Apache pour votre site web avec un éditeur de texte comme nano.

      • sudo nano /etc/apache2/sites-available/wordpress.conf

      Pour autoriser les fichiers .htaccess, nous devons paramétrer la directive AllowOverride dans un bloc Directory pointant vers la racine de notre document. Ajoutez le bloc de texte suivant dans le bloc VirtualHost de votre fichier de configuration, en veillant à utiliser le bon répertoire web root :

      /etc/apache2/sites-available/wordpress.conf

      <Directory /var/www/wordpress/>
          AllowOverride All
      </Directory>
      

      Lorsque vous avez terminé, enregistrez et fermez le fichier. Dans nano, vous pouvez le faire en appuyant sur CTRL et X ensemble, puis Y, puis ENTER.

      Activer le module de réécriture

      Ensuite, nous pouvons activer mod_rewrite afin de pouvoir utiliser la fonction de permalien de WordPress :

      Cela vous permet d’avoir des permaliens plus lisibles à l’oeil humain pour vos messages, comme les deux exemples suivants :

      http://example.com/2012/post-name/
      http://example.com/2012/12/30/post-name
      

      La commande a2enmod appelle un script qui active le module spécifié dans la configuration d’Apache.

      Activer les modifications

      Avant de mettre en œuvre les modifications que nous avons apportées, vérifiez que nous n’avons pas fait d’erreurs de syntaxe en effectuant le test suivant.

      • sudo apache2ctl configtest

      Vous pouvez recevoir des résultats comme ceux qui suivent :

      Output

      AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message Syntax OK

      Si vous souhaitez supprimer la première ligne, ajoutez simplement une directive ServerName à votre fichier de configuration principal (global) d’Apache à l’emplacement /etc/apache2/apache2.conf. Le ServerName peut être le domaine ou l’adresse IP de votre serveur. Il s’agit toutefois d’un simple message qui n’affecte pas la fonctionnalité de votre site. Tant que la sortie contient Syntax OK, vous êtes prêt à continuer.

      Redémarrez Apache pour mettre en œuvre les changements. Veillez à redémarrer maintenant même si vous avez redémarré plus tôt dans ce tutoriel.

      • sudo systemctl restart apache2

      Nous allons ensuite télécharger et mettre en place WordPress lui-même.

      Étape 4 – Téléchargement de WordPress

      Maintenant que le logiciel de notre serveur est configuré, nous pouvons télécharger et installer WordPress. Pour des raisons de sécurité notamment, il est toujours recommandé de se procurer la dernière version de WordPress sur leur site.

      Passez dans un répertoire inscriptible (nous recommandons un répertoire temporaire comme /tmp) et téléchargez la version compressée.

      • cd /tmp
      • curl -O https://wordpress.org/latest.tar.gz

      Extrayez le fichier compressé pour créer la structure de répertoire de WordPress :

      Nous allons déplacer ces fichiers à la racine de notre document dans un instant. Avant cela, nous pouvons ajouter un fichier .htaccess factice afin qu’il soit disponible pour une utilisation ultérieure par WordPress.

      Créez le fichier en tapant :

      • touch /tmp/wordpress/.htaccess

      Nous allons également copier l’exemple du fichier de configuration vers le nom de fichier que WordPress lit :

      • cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

      Nous pouvons également créer le répertoire des upgrade, afin que WordPress ne rencontre pas de problèmes de permissions lorsqu’il essaie de le faire seul après une mise à jour de son logiciel :

      • mkdir /tmp/wordpress/wp-content/upgrade

      Nous pouvons maintenant copier l’intégralité du contenu du répertoire à la racine de notre document. Nous ajoutons un point à la fin de notre répertoire source pour indiquer que tout ce qui se trouve dans le répertoire doit être copié, y compris les fichiers cachés (tels que le fichier .htaccess que nous avons créé) :

      • sudo cp -a /tmp/wordpress/. /var/www/wordpress

      Veillez à remplacer le /var/www/wordpress avec le répertoire que vous avez configuré sur votre serveur. 

      Étape 5 – Configurer le répertoire WordPress

      Avant de procéder à la configuration Web de WordPress, nous devons ajuster certains éléments de notre répertoire WordPress.

      Ajuster la propriété et les autorisations

      Une étape importante que nous devons accomplir consiste à établir des autorisations et des droits de propriété raisonnables sur les fichiers.

      Nous commencerons par donner la propriété de tous les fichiers à www-data user et group. C’est l’utilisateur sous lequel le serveur web Apache fonctionne, et Apache devra être capable de lire et d’écrire des fichiers WordPress afin de servir le site web et d’effectuer des mises à jour automatiques.

      Mettez à jour la propriété avec la commande chown qui vous permet de modifier la propriété du fichier. Veillez à pointer vers le répertoire pertinent de votre serveur.

      • sudo chown -R www-data:www-data /var/www/wordpress

      Ensuite, nous allons en faire deux find pour définir les autorisations correctes sur les répertoires et les fichiers WordPress :

      • sudo find /var/www/wordpress/ -type d -exec chmod 750 {} ;
      • sudo find /var/www/wordpress/ -type f -exec chmod 640 {} ;

      Ces autorisations devraient vous permettre de travailler efficacement avec WordPress, mais notez que certains plugins et procédures peuvent nécessiter des ajustements supplémentaires.

      Modifier le fichier de configuration WordPress

      Maintenant, nous devons apporter quelques modifications au fichier de configuration principal de WordPress.

      Lorsque nous ouvrirons le fichier, notre première tâche sera d’ajuster certaines clés secrètes afin d’assurer un niveau de sécurité pour notre installation. WordPress fournit un générateur sécurisé pour ces valeurs, afin que vous n’ayez pas à essayer de trouver de bonnes valeurs par vous-même. Elles ne sont utilisées qu’en interne, de sorte qu’il ne sera pas préjudiciable à la facilité d’utilisation d’avoir des valeurs complexes et sûres ici.

      Pour récupérer des valeurs sécurisées du générateur de clés secrètes de WordPress, tapez :

      • curl -s https://api.wordpress.org/secret-key/1.1/salt/

      Vous obtiendrez des valeurs uniques qui ressemblent à des sorties similaires à celles du bloc ci-dessous.

      Attention ! Il est important que vous demandiez des valeurs uniques à chaque fois. Ne copiez PAS les valeurs ci-dessous !

      Output

      define('AUTH_KEY', '1jl/vqfs<XhdXoAPz9 DO NOT COPY THESE VALUES c_j{iwqD^<+c9.k<J@4H'); define('SECURE_AUTH_KEY', 'E2N-h2]Dcvp+aS/p7X DO NOT COPY THESE VALUES {Ka(f;rv?Pxf})CgLi-3'); define('LOGGED_IN_KEY', 'W(50,{W^,OPB%PB<JF DO NOT COPY THESE VALUES 2;y&,2m%3]R6DUth[;88'); define('NONCE_KEY', 'll,4UC)7ua+8<!4VM+ DO NOT COPY THESE VALUES #`DXF+[$atzM7 o^-C7g'); define('AUTH_SALT', 'koMrurzOA+|L_lG}kf DO NOT COPY THESE VALUES 07VC*Lj*lD&?3w!BT#-'); define('SECURE_AUTH_SALT', 'p32*p,]z%LZ+pAu:VY DO NOT COPY THESE VALUES C-?y+K0DK_+F|0h{!_xY'); define('LOGGED_IN_SALT', 'i^/G2W7!-1H2OQ+t$3 DO NOT COPY THESE VALUES t6**bRVFSD[Hi])-qS`|'); define('NONCE_SALT', 'Q6]U:K?j4L%Z]}h^q7 DO NOT COPY THESE VALUES 1% ^qUswWgn+6&xqHN&%');

      Il s’agit de lignes de configuration que nous pouvons coller directement dans notre fichier de configuration pour définir des clés sécurisées. Copiez la sortie que vous venez d’obtenir.

      Ensuite, ouvrez le fichier de configuration de WordPress :

      • sudo nano /var/www/wordpress/wp-config.php

      Trouvez la section qui contient les exemples de valeurs pour ces paramètres.

      /var/www/wordpress/wp-config.php

      . . .
      
      define('AUTH_KEY',         'put your unique phrase here');
      define('SECURE_AUTH_KEY',  'put your unique phrase here');
      define('LOGGED_IN_KEY',    'put your unique phrase here');
      define('NONCE_KEY',        'put your unique phrase here');
      define('AUTH_SALT',        'put your unique phrase here');
      define('SECURE_AUTH_SALT', 'put your unique phrase here');
      define('LOGGED_IN_SALT',   'put your unique phrase here');
      define('NONCE_SALT',       'put your unique phrase here');
      
      . . .
      

      Supprimez ces lignes et collez les valeurs que vous avez copiées depuis la ligne de commande :

      /var/www/wordpress/wp-config.php

      . . .
      
      define('AUTH_KEY',         'VALUES COPIED FROM THE COMMAND LINE');
      define('SECURE_AUTH_KEY',  'VALUES COPIED FROM THE COMMAND LINE');
      define('LOGGED_IN_KEY',    'VALUES COPIED FROM THE COMMAND LINE');
      define('NONCE_KEY',        'VALUES COPIED FROM THE COMMAND LINE');
      define('AUTH_SALT',        'VALUES COPIED FROM THE COMMAND LINE');
      define('SECURE_AUTH_SALT', 'VALUES COPIED FROM THE COMMAND LINE');
      define('LOGGED_IN_SALT',   'VALUES COPIED FROM THE COMMAND LINE');
      define('NONCE_SALT',       'VALUES COPIED FROM THE COMMAND LINE');
      
      . . .
      

      Ensuite, nous allons modifier certains des paramètres de connexion à la base de données au début du fichier. Vous devez ajuster le nom de la base de données, l’utilisateur de la base de données et le mot de passe associé que vous avez configuré dans MySQL.

      L’autre modification que nous devons apporter est de définir la méthode que WordPress doit utiliser pour écrire dans le système de fichiers. Comme nous avons donné au serveur web la permission d’écrire là où il faut, nous pouvons explicitement définir la méthode du système de fichiers sur « direct ». Si nous ne configurons pas la méthode avec nos paramètres actuels, WordPress demandera les informations d’identification FTP lorsque nous effectuerons certaines actions.

      Ce paramètre peut être ajouté sous les paramètres de connexion à la base de données ou n’importe où ailleurs dans le fichier :

      /var/www/wordpress/wp-config.php

      . . .
      
      // ** MySQL settings - You can get this info from your web host ** //
      /** The name of the database for WordPress */
      define( 'DB_NAME', 'wordpress' );
      
      /** MySQL database username */
      define( 'DB_USER', 'wordpressuser' );
      
      /** MySQL database password */
      define( 'DB_PASSWORD', 'password' );
      
      /** MySQL hostname */
      define( 'DB_HOST', 'localhost' );
      
      /** Database Charset to use in creating database tables. */
      define( 'DB_CHARSET', 'utf8' );
      
      /** The Database Collate type. Don't change this if in doubt. */
      define( 'DB_COLLATE', '' );
      
      
      . . .
      
      define('FS_METHOD', 'direct');
      

      Enregistrez et fermez le fichier lorsque vous avez terminé.

      Étape 6 — Finalisation de l’installation via l’interface Web

      Maintenant que la configuration du serveur est terminée, nous pouvons finaliser l’installation via l’interface Web.

      Dans votre navigateur web, naviguez vers le nom de domaine ou l’adresse IP publique de votre serveur :

      https://server_domain_or_IP
      

      Sélectionnez la langue que vous souhaitez utiliser :

      WordPress language selection

      Ensuite, vous arriverez à la page de configuration principale.

      Choisissez un nom pour votre site WordPress et choisissez un nom d’utilisateur. Il est recommandé de choisir quelque chose d’unique et d’éviter les noms d’utilisateur courants comme « admin » pour des raisons de sécurité. Un mot de passe fort est généré automatiquement. Enregistrez ce mot de passe ou choisissez un autre mot de passe fort.

      Entrez votre adresse e-mail et choisissez si vous voulez demander aux moteurs de recherche de ne pas indexer votre site :

      WordPress setup installation

      Lorsque vous cliquez, vous accédez à une page qui vous invite à vous connecter :

      WordPress login prompt

      Une fois connecté, vous serez redirigé vers le tableau de bord d’administration de WordPress :

      WordPress login prompt

      A ce stade, vous pouvez commencer à concevoir votre site WordPress ! Si c’est la première fois que vous utilisez WordPress, explorez un peu l’interface pour vous familiariser avec votre nouveau CMS.

      Conclusion

      Félicitations, WordPress est maintenant installé et prêt à être utilisé !

      À ce stade, vous voudrez peut-être commencer à faire ce qui suit :

      • Choisissez vos paramètres de permaliens pour les messages WordPress, qui se trouvent dans Settings > Permalinks.
      • Sélectionnez un nouveau thème dans Appearance > Themes. 
      • Installez de nouveaux plugins pour augmenter les fonctionnalités de votre site sous Plugins > Add New. 
      • Si vous comptez collaborer avec d’autres personnes, vous pouvez également ajouter des utilisateurs supplémentaires à ce moment sous Users > Add New. 

      Vous pouvez trouver des ressources supplémentaires pour d’autres façons d’installer WordPress, apprendre comment installer WordPress sur différentes distributions de serveurs, automatiser vos installations WordPress, et faire évoluer vos sites WordPress en consultant notre balise communautaire WordPress. 



      Source link

      How To Install WordPress on Ubuntu 20.04 with a LAMP Stack


      Not using Ubuntu 20.04?


      Choose a different version or distribution.

      Introduction

      WordPress is an extremely popular open-source technology for making websites and blogs on the internet today. Used by 63% of all websites that use a content management system (CMS), WordPress sites represent 36% of all websites that are currently online.

      There are many different approaches to getting access to WordPress and some setup processes are more complex than others. This tutorial is intended for those who desire to install and administer a WordPress instance on an unmanaged cloud server via the command line. Though this approach requires more steps than a ready-made WordPress installation, it offers administrators greater control over their WordPress environment.

      If you are looking to access a ready-made WordPress installation, DigitalOcean Marketplace offers a one-click app to get you started with WordPress through installation when spinning up your server.

      Depending on your needs and goals, you may find other options that are more suitable. As open-source software, WordPress can be freely downloaded and installed, but to be available on the web, you will likely need to purchase cloud infrastructure and a domain name. Continue following this guide if you are interested in working through the server-side installation and set up of a WordPress site.

      This tutorial will be using a LAMP (Linux, Apache, MySQL, and PHP) stack, which is one option for a server architecture that supports WordPress by providing the Linux operating system, Apache web server, MySQL database, and PHP programming language. We’ll install and set up WordPress via LAMP on a Linux Ubuntu 20.04 server.

      Prerequisites

      In order to complete this tutorial, you will need access to an Ubuntu 20.04 server and will need to complete these steps before beginning this guide:

      • Set up your server by following our Ubuntu 20.04 initial server setup guide, and ensure you have a non-root sudo user.
      • Install a LAMP stack by following our LAMP guide to install and configure this software.
      • Secure your site: WordPress takes in user input and stores user data, so it is important for it to have a layer of security. TLS/SSL is the technology that allows you to encrypt the traffic from your site so that your and your users’ connection is secure. Here are two options available to you to meet this requirement:
        • If you have a domain name… you can secure your site with Let’s Encrypt, which provides free, trusted certificates. Follow our Let’s Encrypt guide for Apache to set this up.
        • If you do not have a domain… and you are just using this configuration for testing or personal use, you can use a self-signed certificate instead. This provides the same type of encryption, but without the domain validation. Follow our self-signed SSL guide for Apache to get set up.

      When you are finished with the setup steps, log into your server as your sudo user and continue below.

      Step 1 — Creating a MySQL Database and User for WordPress

      The first step that we will take is a preparatory one. WordPress uses MySQL to manage and store site and user information. We have MySQL installed already, but we need to make a database and a user for WordPress to use.

      To get started, log into the MySQL root (administrative) account by issuing this command (note that this is not the root user of your server):

      You will be prompted for the password you set for the MySQL root account when you installed the software.

      Note: If you cannot access your MySQL database via root, as a sudo user you can update your root user’s password by logging into the database like so:

      Once you receive the MySQL prompt, you can update the root user’s password. Here, replace new_password with a strong password of your choosing.

      • ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password';

      You may now type EXIT; and can log back into the database via password with the following command:

      Within the database, we can create an exclusive database for WordPress to control. You can call this whatever you would like, but we will be using the name wordpress in this guide. Create the database for WordPress by typing:

      • CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

      Note: Every MySQL statement must end in a semi-colon (;). Check to make sure this is present if you are running into any issues.

      Next, we are going to create a separate MySQL user account that we will use exclusively to operate our new database. Creating specific databases and accounts can support us from a management and security standpoint. We will use the name wordpressuser in this guide, but feel free to use whatever name is relevant for you.

      We are going to create this account, set a password, and grant access to the database we created. We can do this by typing the following command. Remember to choose a strong password here for your database user where we have password:

      • CREATE USER 'wordpressuser'@'%' IDENTIFIED WITH mysql_native_password BY 'password';

      Next, let the database know that our wordpressuser should have complete access to the database we set up:

      • GRANT ALL ON wordpress.* TO 'wordpressuser'@'%';

      You now have a database and user account, each made specifically for WordPress. We need to flush the privileges so that the current instance of MySQL knows about the recent changes we’ve made:

      Exit out of MySQL by typing:

      In the next step, we’ll lay some foundations for WordPress plugins by downloading PHP extensions for our server.

      Step 2 — Installing Additional PHP Extensions

      When setting up our LAMP stack, we only required a very minimal set of extensions in order to get PHP to communicate with MySQL. WordPress and many of its plugins leverage additional PHP extensions.

      We can download and install some of the most popular PHP extensions for use with WordPress by typing:

      • sudo apt update
      • sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

      This will lay the groundwork for installing additional plugins into our WordPress site.

      Note: Each WordPress plugin has its own set of requirements. Some may require additional PHP packages to be installed. Check your plugin documentation to discover its PHP requirements. If they are available, they can be installed with apt as demonstrated above.

      We will need to restart Apache to load these new extensions, we’ll be doing more configurations on Apache in the next section, so you can wait until then, or restart now to complete the PHP extension process.

      • sudo systemctl restart apache2

      Step 3 — Adjusting Apache’s Configuration to Allow for .htaccess Overrides and Rewrites

      Next, we will be making a few minor adjustments to our Apache configuration. Based on the prerequisite tutorials, you should have a configuration file for your site in the /etc/apache2/sites-available/ directory.

      In this guide, we’ll use /etc/apache2/sites-available/wordpress.conf as an example here, but you should substitute the path to your configuration file where appropriate. Additionally, we will use /var/www/wordpress as the root directory of our WordPress install. You should use the web root specified in your own configuration. If you followed our LAMP tutorial, it may be your domain name instead of wordpress in both of these instances.

      Note: It’s possible you are using the 000-default.conf default configuration (with /var/www/html as your web root). This is fine to use if you’re only going to host one website on this server. If not, it’s better to split the necessary configuration into logical chunks, one file per site.

      With our paths identified, we can move onto working with .htaccess so that Apache can handle configuration changes on a per-directory basis.

      Enabling .htaccess Overrides

      Currently, the use of .htaccess files is disabled. WordPress and many WordPress plugins use these files extensively for in-directory tweaks to the web server’s behavior.

      Open the Apache configuration file for your website with a text editor like nano.

      • sudo nano /etc/apache2/sites-available/wordpress.conf

      To allow .htaccess files, we need to set the AllowOverride directive within a Directory block pointing to our document root. Add the following block of text inside the VirtualHost block in your configuration file, making sure to use the correct web root directory:

      /etc/apache2/sites-available/wordpress.conf

      <Directory /var/www/wordpress/>
          AllowOverride All
      </Directory>
      

      When you are finished, save and close the file. In nano, you can do this by pressing CTRL and X together, then Y, then ENTER.

      Enabling the Rewrite Module

      Next, we can enable mod_rewrite so that we can utilize the WordPress permalink feature:

      This allows you to have more human-readable permalinks to your posts, like the following two examples:

      http://example.com/2012/post-name/
      http://example.com/2012/12/30/post-name
      

      The a2enmod command calls a script that enables the specified module within the Apache configuration.

      Enabling the Changes

      Before we implement the changes we’ve made, check to make sure we haven’t made any syntax errors by running the following test.

      • sudo apache2ctl configtest

      You may receive output like the following:

      Output

      AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message Syntax OK

      If you wish to suppress the top line, just add a ServerName directive to your main (global) Apache configuration file at /etc/apache2/apache2.conf. The ServerName can be your server’s domain or IP address. This is just a message, however, and doesn’t affect the functionality of your site. As long as the output contains Syntax OK, you are ready to continue.

      Restart Apache to implement the changes. Make sure to restart now even if you have restarted earlier in this tutorial.

      • sudo systemctl restart apache2

      Next, we will download and set up WordPress itself.

      Step 4 — Downloading WordPress

      Now that our server software is configured, we can download and set up WordPress. For security reasons in particular, it is always recommended to get the latest version of WordPress from their site.

      Change into a writable directory (we recommend a temporary one like /tmp) and download the compressed release.

      • cd /tmp
      • curl -O https://wordpress.org/latest.tar.gz

      Extract the compressed file to create the WordPress directory structure:

      We will be moving these files into our document root momentarily. Before we do, we can add a dummy .htaccess file so that this will be available for WordPress to use later.

      Create the file by typing:

      • touch /tmp/wordpress/.htaccess

      We’ll also copy over the sample configuration file to the filename that WordPress reads:

      • cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

      We can also create the upgrade directory, so that WordPress won’t run into permissions issues when trying to do this on its own following an update to its software:

      • mkdir /tmp/wordpress/wp-content/upgrade

      Now, we can copy the entire contents of the directory into our document root. We are using a dot at the end of our source directory to indicate that everything within the directory should be copied, including hidden files (like the .htaccess file we created):

      • sudo cp -a /tmp/wordpress/. /var/www/wordpress

      Ensure that you replace the /var/www/wordpress directory with the directory you have set up on your server.

      Step 5 — Configuring the WordPress Directory

      Before we do the web-based WordPress setup, we need to adjust some items in our WordPress directory.

      Adjusting the Ownership and Permissions

      An important step that we need to accomplish is setting up reasonable file permissions and ownership.

      We’ll start by giving ownership of all the files to the www-data user and group. This is the user that the Apache web server runs as, and Apache will need to be able to read and write WordPress files in order to serve the website and perform automatic updates.

      Update the ownership with the chown command which allows you to modify file ownership. Be sure to point to your server’s relevant directory.

      • sudo chown -R www-data:www-data /var/www/wordpress

      Next we’ll run two find commands to set the correct permissions on the WordPress directories and files:

      • sudo find /var/www/wordpress/ -type d -exec chmod 750 {} ;
      • sudo find /var/www/wordpress/ -type f -exec chmod 640 {} ;

      These permissions should get you working effectively with WordPress, but note that some plugins and procedures may require additional tweaks.

      Setting Up the WordPress Configuration File

      Now, we need to make some changes to the main WordPress configuration file.

      When we open the file, our first task will be to adjust some secret keys to provide a level of security for our installation. WordPress provides a secure generator for these values so that you do not have to try to come up with good values on your own. These are only used internally, so it won’t hurt usability to have complex, secure values here.

      To grab secure values from the WordPress secret key generator, type:

      • curl -s https://api.wordpress.org/secret-key/1.1/salt/

      You will get back unique values that resemble output similar to the block below.

      Warning! It is important that you request unique values each time. Do NOT copy the values below!

      Output

      define('AUTH_KEY', '1jl/vqfs<XhdXoAPz9 DO NOT COPY THESE VALUES c_j{iwqD^<+c9.k<J@4H'); define('SECURE_AUTH_KEY', 'E2N-h2]Dcvp+aS/p7X DO NOT COPY THESE VALUES {Ka(f;rv?Pxf})CgLi-3'); define('LOGGED_IN_KEY', 'W(50,{W^,OPB%PB<JF DO NOT COPY THESE VALUES 2;y&,2m%3]R6DUth[;88'); define('NONCE_KEY', 'll,4UC)7ua+8<!4VM+ DO NOT COPY THESE VALUES #`DXF+[$atzM7 o^-C7g'); define('AUTH_SALT', 'koMrurzOA+|L_lG}kf DO NOT COPY THESE VALUES 07VC*Lj*lD&?3w!BT#-'); define('SECURE_AUTH_SALT', 'p32*p,]z%LZ+pAu:VY DO NOT COPY THESE VALUES C-?y+K0DK_+F|0h{!_xY'); define('LOGGED_IN_SALT', 'i^/G2W7!-1H2OQ+t$3 DO NOT COPY THESE VALUES t6**bRVFSD[Hi])-qS`|'); define('NONCE_SALT', 'Q6]U:K?j4L%Z]}h^q7 DO NOT COPY THESE VALUES 1% ^qUswWgn+6&xqHN&%');

      These are configuration lines that we can paste directly in our configuration file to set secure keys. Copy the output you received now.

      Next, open the WordPress configuration file:

      • sudo nano /var/www/wordpress/wp-config.php

      Find the section that contains the example values for those settings.

      /var/www/wordpress/wp-config.php

      . . .
      
      define('AUTH_KEY',         'put your unique phrase here');
      define('SECURE_AUTH_KEY',  'put your unique phrase here');
      define('LOGGED_IN_KEY',    'put your unique phrase here');
      define('NONCE_KEY',        'put your unique phrase here');
      define('AUTH_SALT',        'put your unique phrase here');
      define('SECURE_AUTH_SALT', 'put your unique phrase here');
      define('LOGGED_IN_SALT',   'put your unique phrase here');
      define('NONCE_SALT',       'put your unique phrase here');
      
      . . .
      

      Delete those lines and paste in the values you copied from the command line:

      /var/www/wordpress/wp-config.php

      . . .
      
      define('AUTH_KEY',         'VALUES COPIED FROM THE COMMAND LINE');
      define('SECURE_AUTH_KEY',  'VALUES COPIED FROM THE COMMAND LINE');
      define('LOGGED_IN_KEY',    'VALUES COPIED FROM THE COMMAND LINE');
      define('NONCE_KEY',        'VALUES COPIED FROM THE COMMAND LINE');
      define('AUTH_SALT',        'VALUES COPIED FROM THE COMMAND LINE');
      define('SECURE_AUTH_SALT', 'VALUES COPIED FROM THE COMMAND LINE');
      define('LOGGED_IN_SALT',   'VALUES COPIED FROM THE COMMAND LINE');
      define('NONCE_SALT',       'VALUES COPIED FROM THE COMMAND LINE');
      
      . . .
      

      Next, we are going to modify some of the database connection settings at the beginning of the file. You need to adjust the database name, the database user, and the associated password that you configured within MySQL.

      The other change we need to make is to set the method that WordPress should use to write to the filesystem. Since we’ve given the web server permission to write where it needs to, we can explicitly set the filesystem method to “direct”. Failure to set this with our current settings would result in WordPress prompting for FTP credentials when we perform some actions.

      This setting can be added below the database connection settings, or anywhere else in the file:

      /var/www/wordpress/wp-config.php

      . . .
      
      // ** MySQL settings - You can get this info from your web host ** //
      /** The name of the database for WordPress */
      define( 'DB_NAME', 'wordpress' );
      
      /** MySQL database username */
      define( 'DB_USER', 'wordpressuser' );
      
      /** MySQL database password */
      define( 'DB_PASSWORD', 'password' );
      
      /** MySQL hostname */
      define( 'DB_HOST', 'localhost' );
      
      /** Database Charset to use in creating database tables. */
      define( 'DB_CHARSET', 'utf8' );
      
      /** The Database Collate type. Don't change this if in doubt. */
      define( 'DB_COLLATE', '' );
      
      
      . . .
      
      define('FS_METHOD', 'direct');
      

      Save and close the file when you are finished.

      Step 6 — Completing the Installation Through the Web Interface

      Now that the server configuration is complete, we can complete the installation through the web interface.

      In your web browser, navigate to your server’s domain name or public IP address:

      https://server_domain_or_IP
      

      Select the language you would like to use:

      WordPress language selection

      Next, you will come to the main setup page.

      Select a name for your WordPress site and choose a username. It is recommended to choose something unique and avoid common usernames like “admin” for security purposes. A strong password is generated automatically. Save this password or select an alternative strong password.

      Enter your email address and select whether you want to discourage search engines from indexing your site:

      WordPress setup installation

      When you click ahead, you will be taken to a page that prompts you to log in:

      WordPress login prompt

      Once you log in, you will be taken to the WordPress administration dashboard:

      WordPress login prompt

      At this point, you can begin to design your WordPress website! If this is your first time using WordPress, explore the interface a bit to get acquainted with your new CMS.

      Conclusion

      Congratulations, WordPress is now installed and is ready to be used!

      At this point you may want to start doing the following:

      • Choose your permalinks setting for WordPress posts, which can be found in Settings > Permalinks.
      • Select a new theme in Appearance > Themes.
      • Install new plugins to increase your site’s functionality under Plugins > Add New.
      • If you are going to collaborate with others, you may also wish to add additional users at this time under Users > Add New.

      You can find additional resources for alternate ways to install WordPress, learn how to install WordPress on different server distributions, automate your WordPress installations, and scale your WordPress sites by checking out our WordPress Community tag.



      Source link

      So installieren Sie WordPress mit OpenLiteSpeed unter Ubuntu 18.04


      Einführung

      WordPress ist ein Open-Source-Content-Management-System (CMS). Als weltweit beliebtetes CMS ermöglicht WordPress die Einrichtung von Blogs und Websites auf einem MySQL-Datenbank-Backend, wobei PHP zur Ausführung von Skripten und zur Verarbeitung dynamischer Inhalte verwendet wird.

      OpenLiteSpeed ist ein optimierter Open-Source-Webserver, den Sie zur Verwaltung und Bereitstellung von Websites verwenden können. OpenLiteSpeed verfügt über einige nützliche Funktionen, die ihn zu einer soliden Wahl für viele Installationen machen: Apache-kompatible Neuschreibregeln, eine integrierte webbasierte Verwaltungsoberfläche und eine für den Server optimierte PHP-Verarbeitung.

      Dieser Leitfaden führt durch den Prozess der Installation und Einrichtung einer WordPress-Instanz unter Ubuntu 18.04 mit dem OpenLiteSpeed-Webserver. Da sowohl WordPress als auch OpenLiteSpeed über einen Webbrowser verwaltet werden können, ist diese Konfiguration ideal für diejenigen, die keinen regulären Zugriff zu einer SSH-Sitzung haben oder sich nicht wohlfühlen, einen Webserver über die Befehlszeile zu verwalten.

      Voraussetzungen

      Bevor Sie mit diesem Leitfaden beginnen, benötigen Sie Folgendes:

      Schritt 1 – Erstellen einer Datenbank und eines Datenbankbenutzers für WordPress

      WordPress verwendet MySQL, um Site- und Benutzerinformationen zu verwalten und zu speichern. Sie haben MySQL bereits installiert, aber als vorbereitenden Schritt müssen Sie eine Datenbank und einen Benutzer für WordPress einrichten.

      Stellen Sie zu Beginn eine Verbindung mit Ihrem Server unter Verwendung von SSH her:

      Melden Sie sich dann an dem MySQL Root-Konto an:

      Anmerkung: Wenn Sie Schritt 3 im vorbereitenden MySQL-Tutorial abgeschlossen und Ihren MySQL-Benutzer root konfiguriert haben, um sich mit dem Plugin mysql_native_password zu authentifizieren, müssen Sie sich mit dem folgenden Befehl anmelden:

      Geben Sie das Passwort Ihres Root-Benutzers ein, wenn Sie dazu aufgefordert werden.

      Erstellen Sie von der MySQL-Eingabeaufforderung aus eine Datenbank mit dem folgenden Befehl. Hier nennen wir diese Datenbank der Einfachheit halber wordpress, aber Sie können ihr einen beliebigen Namen geben.

      • CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

      Erstellen Sie dann einen Benutzer und erteilen Sie ihm Berechtigungen über die von Ihnen gerade erstellte Datenbank. Auch hier können Sie diesem Benutzer einen beliebigen Namen geben, aber der Einfachheit halber nennen wir ihn wordpressuser. Denken Sie daran, password in ein starkes Passwort Ihrer Wahl zu ändern:

      • GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'password';

      Führen Sie dann FLUSH PRIVILEGES aus, was den Server anweist, die Berechtigungstabellen neu zu laden und die Änderungen zu übernehmen:

      Danach können Sie die MySQL-Eingabeaufforderung schließen:

      Sie haben die Einrichtung Ihrer MySQL-Installation für die Arbeit mit WordPress abgeschlossen. Als Nächstes installieren wir einige PHP-Erweiterungen.

      Schritt 2 – Installieren zusätzlicher PHP-Erweiterungen

      In dem vorbereitenden Tutorial OpenLiteSpeed haben Sie das Paket lsphp73 installiert. Dies ist eine für OpenLiteSpeed optimierte Zusammenstellung von PHP, die die LiteSpeed-SAPI zur Kommunikation mit externen Anwendungen nutzt. Je nach Ihren Bedürfnissen kann WordPress andere bestimmte PHP-Erweiterungen benötigen, um wie gewünscht zu funktionieren.

      Führen Sie den folgenden Befehl aus, um einige mit WordPress häufig verwendete PHP-Erweiterungen zu installieren:

      • sudo apt install lsphp73-common lsphp73-curl lsphp73-imagick lsphp73-imap lsphp73-json lsphp73-memcached lsphp73-mysql lsphp73-opcache lsphp73-redis

      Anmerkung: Die in diesem Befehl enthaltenen Pakete können nicht jeden Anwendungsfall abdecken. Eine vollständige Liste der in dem LiteSpeed-Repository, das Sie in dem vorbereitenden Tutorial zu Ihrem Server hinzugefügt haben, verfügbaren PHP 7.3-Erweiterungen, finden Sie im LiteSpeed Wiki.

      Danach können Sie mit dem Herunterladen und Einrichten von WordPress auf Ihrem Server fortfahren.

      Schritt 3 – Herunterladen von WordPress

      Nachdem Ihre Server-Software konfiguriert ist, können Sie WordPress installieren und einrichten. Insbesondere aus Sicherheitsgründen ist es immer empfehlenswert, die neueste Version von WordPress direkt von ihrer Website zu beziehen.

      Wechseln Sie in ein beschreibbares Verzeichnis und laden dann die komprimierte Version herunter, indem Sie Folgendes eingeben:

      • cd /tmp
      • curl -O https://wordpress.org/latest.tar.gz

      Extrahieren Sie die komprimierte Datei, um die WordPress-Verzeichnisstruktur zu erstellen:

      Wir werden diese Dateien vorübergehend in unser Stammverzeichnis verschieben, doch zuerst erstellen wir einige Dateien und Verzeichnisse, von denen die Installation von WordPress abhängig ist.

      OpenLiteSpeed unterstützt die Dateien .htaccess. Dies ist für unsere Zwecke wichtig, da WordPress die Dateien .htaccess zur Erstellung und Verwaltung von Permalinks verwendet.

      Fügen Sie eine Dummy-Datei .htaccess hinzu, damit sie später von WordPress verwendet werden kann:

      • touch /tmp/wordpress/.htaccess

      Als Nächstes kopieren Sie die Beispielkonfigurationsdatei in den Dateinamen, den WordPress tatsächlich liest:

      • cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

      Erstellen Sie zusätzlich das Verzeichnis upgrade, damit WordPress keine Probleme mit Berechtigungen hat, wenn es versucht, dies nach einer Aktualisierung seiner Software selbstständig zu tun:

      • mkdir /tmp/wordpress/wp-content/upgrade

      Kopieren Sie dann den gesamten Inhalt des Verzeichnisses in Ihr Dokumenten-Stammverzeichnis. OpenLiteSpeed verfügt standardmäßig über einen virtuellen Host namens Example in dem Verzeichnis /usr/local/lsws/. Das Dokumenten-Stammverzeichnis für den virtuellen Host Example ist das Unterverzeichnis html:

      • sudo cp -a /tmp/wordpress/. /usr/local/lsws/Example/html/wordpress

      Beachten Sie, dass dieser Befehl am Ende des Quellverzeichnisses einen Punkt enthält, um anzugeben, dass alles im Verzeichnis kopiert werden soll, einschließlich versteckter Dateien (wie die von Ihnen erstellte Datei .htaccess):

      Damit haben Sie WordPress erfolgreich auf Ihrem Webserver installiert und einige der ersten Konfigurationsschritte ausgeführt. Als Nächstes werden wir einige weitere Konfigurationsänderungen vornehmen, die WordPress die zur sicheren Funktion und zum Zugriff auf die zuvor erstellte MySQL-Datenbank und das Benutzerkonto erforderlichen Berechtigungen erteilen.

      Schritt 4 – Konfigurieren des WordPress-Verzeichnisses

      Bevor wir den webbasierten Einrichtungsvorgang für WordPress durchlaufen können, müssen wir einige Einträge in unserem WordPress-Verzeichnis anpassen.

      Beginnen Sie damit, die Eigentümerschaft an allen Dateien im Verzeichnis an den Benutzer nobody und die Gruppe nogroup zu übergeben, die der OpenLiteSpeed-Webserver standardmäßig ausführt. Der folgende Befehl chown gewährt OpenLiteSpeed die Fähigkeit zum Lesen und Schreiben von Dateien im Verzeichnis wordpress, sodass es die Website bedienen und automatisch Aktualisierungen durchführen kann:

      • sudo chown -R nobody:nogroup /usr/local/lsws/Example/html/wordpress

      Führen Sie als Nächstes zwei find-Befehle aus, um die richtigen Berechtigungen für die WordPress-Verzeichnisse und -Dateien festzulegen:

      • sudo find /usr/local/lsws/Example/html/wordpress/ -type d -exec chmod 750 {} ;
      • sudo find /usr/local/lsws/Example/html/wordpress/ -type f -exec chmod 640 {} ;

      Diese sollten von Anfang an ein sinnvoller Berechtigungssatz sein, obwohl einige Plugins und Verfahren möglicherweise zusätzliche Anpassungen erfordern.

      Anschließend müssen Sie einige Änderungen an der Hauptkonfigurationsdatei von WordPress vornehmen.

      Wenn Sie die Datei öffnen, ist Ihr erstes Ziel die Anpassung einiger geheimer Schlüssel, um eine gewisse Sicherheit für Ihre Installation zu gewährleisten. WordPress stellt einen sicheren Generator für diese Werte bereit, damit Sie sie sich nicht ausdenken müssen. Sie werden nur intern verwendet, d. h. komplexe, sichere Werte haben keine negativen Auswirkungen auf die Benutzerfreundlichkeit.

      Um sichere Werte vom WordPress Secret Key Generator zu erhalten, geben Sie Folgendes ein:

      • curl -s https://api.wordpress.org/secret-key/1.1/salt/

      Sie werden eindeutige Werte erhalten, die ungefähr so aussehen:

      Warnung! Es ist wichtig, dass Sie jedes Mal eindeutige Werte anfordern. Kopieren Sie NICHT die unten aufgeführten Werte!

      Output

      define('AUTH_KEY', '1jl/vqfs<XhdXoAPz9 DO NOT COPY THESE VALUES c_j{iwqD^<+c9.k<J@4H'); define('SECURE_AUTH_KEY', 'E2N-h2]Dcvp+aS/p7X DO NOT COPY THESE VALUES {Ka(f;rv?Pxf})CgLi-3'); define('LOGGED_IN_KEY', 'W(50,{W^,OPB%PB<JF DO NOT COPY THESE VALUES 2;y&,2m%3]R6DUth[;88'); define('NONCE_KEY', 'll,4UC)7ua+8<!4VM+ DO NOT COPY THESE VALUES #`DXF+[$atzM7 o^-C7g'); define('AUTH_SALT', 'koMrurzOA+|L_lG}kf DO NOT COPY THESE VALUES 07VC*Lj*lD&?3w!BT#-'); define('SECURE_AUTH_SALT', 'p32*p,]z%LZ+pAu:VY DO NOT COPY THESE VALUES C-?y+K0DK_+F|0h{!_xY'); define('LOGGED_IN_SALT', 'i^/G2W7!-1H2OQ+t$3 DO NOT COPY THESE VALUES t6**bRVFSD[Hi])-qS`|'); define('NONCE_SALT', 'Q6]U:K?j4L%Z]}h^q7 DO NOT COPY THESE VALUES 1% ^qUswWgn+6&xqHN&%');

      Dies sind Konfigurationszeilen, die Sie direkt in Ihre Konfigurationsdatei einfügen, um sichere Schlüssel festzulegen. Kopieren Sie die erhaltene Ausgabe in die Zwischenablage und öffnen Sie dann die WordPress-Konfigurationsdatei, die sich im Stammverzeichnis Ihres Dokuments befindet:

      • sudo nano /usr/local/lsws/Example/html/wordpress/wp-config.php

      Finden Sie den Abschnitt, der die Stellvertreterwerte für diese Einstellungen enthält. Dies sollte ungefähr so aussehen:

      /var/www/wordpress/wp-config.php

      . . .
      
      define('AUTH_KEY',         'put your unique phrase here');
      define('SECURE_AUTH_KEY',  'put your unique phrase here');
      define('LOGGED_IN_KEY',    'put your unique phrase here');
      define('NONCE_KEY',        'put your unique phrase here');
      define('AUTH_SALT',        'put your unique phrase here');
      define('SECURE_AUTH_SALT', 'put your unique phrase here');
      define('LOGGED_IN_SALT',   'put your unique phrase here');
      define('NONCE_SALT',       'put your unique phrase here');
      
      . . .
      

      Löschen Sie diese Zeilen und fügen Sie die Werte ein, die Sie aus der Befehlszeile kopiert haben:

      /var/www/wordpress/wp-config.php

      . . .
      
      define('AUTH_KEY',         'VALUES COPIED FROM THE COMMAND LINE');
      define('SECURE_AUTH_KEY',  'VALUES COPIED FROM THE COMMAND LINE');
      define('LOGGED_IN_KEY',    'VALUES COPIED FROM THE COMMAND LINE');
      define('NONCE_KEY',        'VALUES COPIED FROM THE COMMAND LINE');
      define('AUTH_SALT',        'VALUES COPIED FROM THE COMMAND LINE');
      define('SECURE_AUTH_SALT', 'VALUES COPIED FROM THE COMMAND LINE');
      define('LOGGED_IN_SALT',   'VALUES COPIED FROM THE COMMAND LINE');
      define('NONCE_SALT',       'VALUES COPIED FROM THE COMMAND LINE');
      
      . . .
      

      Als Nächstes ändern Sie die Einstellungen für die Datenbankverbindung im oberen Abschnitt der Datei. Sie müssen den Datenbanknamen, den Datenbankbenutzer und das zugehörige Passwort, das Sie in MySQL konfiguriert haben, anpassen.

      Die andere Änderung, die Sie vornehmen müssen, ist die Einstellung der Methode, die WordPress zum Schreiben in das Dateisystem verwenden soll. Da wir dem Webserver die Berechtigung erteilt haben, an den erforderlichen Stellen zu schreiben, können wir die Dateisystemmethode ausdrücklich auf direct setzen. Sollte dies nicht mit unseren aktuellen Einstellungen geschehen, würde WordPress bei bestimmten Aktionen nach FTP-Zugangsdaten fragen.

      Diese Einstellung kann unterhalb der Datenbank-Verbindungseinstellungen oder anderswo in der Datei eingefügt werden:

      /var/www/wordpress/wp-config.php

      . . .
      
      define('DB_NAME', 'wordpress');
      
      /** MySQL database username */
      define('DB_USER', 'wordpressuser');
      
      /** MySQL database password */
      define('DB_PASSWORD', 'password');
      
      . . .
      
      define('FS_METHOD', 'direct');
      

      Wenn Sie fertig sind, speichern und schließen Sie die Datei.

      Zu diesem Zeitpunkt ist WordPress auf Ihrem System noch nicht vollständig konfiguriert, da Sie noch einige letzte Handgriffe vornehmen müssen, bevor Sie mit der Veröffentlichung von Inhalten beginnen können. Dafür müssen Sie jedoch zunächst einige Konfigurationsänderungen an Ihrer OpenLiteSpeed-Installation vornehmen.

      Schritt 6 – Konfigurieren von OpenLiteSpeed

      Derzeit haben Sie WordPress auf Ihrem Ubuntu-Server installiert, aber Ihre OpenLiteSpeed-Installation wurde noch nicht für die Bedienung konfiguriert. In diesem Schritt greifen wir auf die Verwaltungsoberfläche von OpenLiteSpeed zu und nehmen einige Änderungen an der Konfiguration Ihres Servers vor.

      Navigieren Sie in Ihrem bevorzugten Webbrowser zur Verwaltungsoberfläche von OpenLiteSpeed. Sie finden diese, indem Sie die öffentliche IP-Adresse Ihres Servers oder den damit verbundenen Domänennamen, gefolgt von :7080, in die Adressleiste Ihres Browsers eingeben:

      https://server_domain_or_IP:7080
      

      Dort wird Ihnen ein Anmeldebildschirm angezeigt. Geben Sie den Benutzernamen und das Passwort ein, das Sie in dem vorbereitenden Tutorial zur OpenLiteSpeed-Installation definiert haben:

      OpenLiteSpeed Anmeldebildschirm

      Suchen Sie in der OpenLiteSpeed-Konsole in der linken Seitenleiste nach Server Configuration und klicken Sie darauf. Navigieren Sie dann zu der Registerkarte External App, suchen Sie die Zeile der LiteSpeed SAPI App und klicken Sie auf die zugehörige Schaltfläche Bearbeiten:

      Server-Konfigurationsseite

      Erinnern Sie sich daran, dass Sie in dem vorbereitenden OpenLiteSpeed-Tutorial das Paket lsphp73 installiert haben, eine Kompilierung von PHP, die für die Arbeit mit OpenLiteSpeed über die LiteSpeed-SAPI optimiert ist. Die Standardeinstellungen auf der Seite External App verweisen jedoch auf lsphp und nicht lsphp73. Aus diesem Grund ist Ihre OpenLiteSpeed-Installation nicht in der Lage, PHP-Skripte korrekt auszuführen.

      Um dies zu korrigieren, ändern Sie das Feld Name auf lsphp73, ändern Sie das Feld Address auf uds://tmp/lshttpd/lsphp73.sock und ändern Sie das Feld Command auf $SERVER_ROOT/lsphp73/bin/lsphp:

      Änderungen an External App

      Klicken Sie auf das Symbol Speichern in der oberen rechten Ecke des LiteSpeed SAPI App-Fensters, nachdem Sie diese Änderungen vorgenommen haben.

      Klicken Sie anschließend im linken Menü auf Virtual Hosts. Suchen Sie auf der Seite Virtual Hosts den virtuellen Host, den Sie verwenden möchten, und klicken Sie auf das Symbol Anzeige. Hier verwenden wir den virtuellen Standardhost Example:

      Seite Virtual Hosts

      Navigieren Sie zu der Registerkarte General des virtuellen Hosts. Finden Sie dort den Abschnitt General und klicken Sie auf die zugehörige Schaltfläche Bearbeiten:

      Virtual Hosts Registerkarte General

      OpenLiteSpeed prüft den Inhalt des Feldes Document Root auf den zu bedienenden Inhalt. Da alle Ihre WordPress-Inhalte und -Dateien in dem zuvor erstellten Verzeichnis wordpress gespeichert sind, aktualisieren Sie das Feld Document Root, um auf dieses Verzeichnis zu verweisen. Dazu müssen Sie lediglich wordpress/ an das Ende des Standardwerts anhängen:

      Virtual Hosts Änderungen an General

      Klicken Sie zum Speichern dieser Änderung auf das Symbol Speichern.

      Nun müssen Sie die Dateien index.php aktivieren, damit sie zur Bearbeitung von Anfragen verwendet werden können, die nicht von statischen Dateien bearbeitet werden. Dies ermöglicht die korrekte Funktionsweise der Hauptlogik von WordPress.

      Blättern Sie, während Sie sich noch auf der Registerkarte General befinden, nach unten, um den Abschnitt Index Files zu finden, und klicken Sie auf das Symbol Bearbeiten:

      Virtual Hosts Seite Index Files

      Stellen Sie in dem Feld Index Files index.html index.php voran. Indem Sie index.php vor index.html setzen, erlauben Sie PHP-Indexdateien den Vorrang. Nach der Aktualisierung dieses Feldes sieht es wie folgt aus:

      Virtual Hosts geänderte Index Files

      Achten Sie darauf, vor dem Fortfahren auf das Symbol Speichern zu klicken.

      Navigieren Sie anschließend zu der Registerkarte Rewrite des virtuellen Hosts. Finden Sie den Abschnitt Rewrite Control und drücken Sie die Schaltfläche Bearbeiten:

      Virtual Hosts Seite Rewrite

      Setzen Sie sowohl die Optionen Enable Rewrite als auch Auto Load from .htaccess auf Yes, indem Sie die jeweiligen Optionsfelder anklicken. Wenn Sie die Rewrite-Anweisungen auf diese Weise konfigurieren, können Sie innerhalb Ihrer WordPress-Installation Permalinks verwenden:

      Virtual Hosts Änderungen an Rewrite

      Klicken Sie nach der Änderung auf das Symbol Speichern.

      Der in der OpenLiteSpeed-Installation enthaltene virtuelle Standardhost enthält einige passwortgeschützte Bereiche, um die Benutzerauthentifizierungsfunktionen von OpenLiteSpeed zu präsentieren. WordPress enthält seine eigenen Authentifizierungsmechanismen und wir werden die in OpenLiteSpeed enthaltene dateibasierte Authentifizierung nicht verwenden. Wir sollten diese entfernen, um die auf unserer WordPress-Installation aktiven verstreuten Konfigurationsfragmente zu minimieren.

      Klicken Sie zuerst auf die Registerkarte Security und anschließend auf die Schaltfläche Löschen neben SampleProtectedArea in der Tabelle Realms List:

      OpenLiteSpeed Security Realm List

      Sie werden aufgefordert, die Löschung zu bestätigen. Klicken Sie zum Fortfahren auf Löschen.

      Klicken Sie anschließend auf die Registerkarte Context. Löschen Sie in der Context List den Inhalt /protected/, der mit dem soeben gelöschten Sicherheitsbereich verbunden war:

      OpenLiteSpeed – Löschen des geschützten Kontexts

      Auch hier müssen Sie die Löschung durch Klicken auf Löschen bestätigen.

      Mit derselben Technik können Sie auch alle oder einen Teil der anderen Kontexte sicher löschen, da wir sie nicht benötigen. Wir haben speziell den Kontext /protected/ gelöscht, weil sonst ein Fehler durch die Löschung des zugehörigen Sicherheitsbereichs (den wir gerade auf der Registerkarte Security entfernt haben) entstehen würde.

      Klicken Sie anschließend auf das grüne Symbol Graceful Restart in der oberen rechten Ecke der OpenLiteSpeed-Konsole. Dadurch wird der OpenLiteSpeed-Server neu gestartet, sodass die von Ihnen vorgenommenen Änderungen angewendet werden:

      Position des Symbols Graceful Restart

      Damit ist Ihr OpenLiteSpeed-Server vollständig konfiguriert. Sie sind jetzt zum Abschluss der Einrichtung von WordPress in Ihrem Browser bereit.

      Schritt 7 – Abschließen der Installation über die WordPress-Oberfläche

      Jetzt ist die Serverkonfiguration abgeschlossen, und wir können die Installation über die Web-Oberfläche abschließen.

      Navigieren Sie im Web-Browser zum Domänenamen oder zur öffentlichen IP-Adresse Ihres Servers:

      http://server_domain_or_IP
      

      Wählen Sie die Sprache aus, die Sie verwenden möchten:

      WordPress-Sprachauswahl

      Als Nächstes kommen Sie zur Setup-Hauptseite. Wählen Sie einen Namen für Ihre WordPress-Website und einen Benutzernamen aus (aus Sicherheitsgründen sollten Sie kein Wort mit „admin“ wählen). Ein starkes Passwort wird automatisch erstellt. Speichern Sie dieses oder wählen Sie anderes starkes Passwort aus.

      Geben Sie Ihre E-Mail-Adresse ein und wählen Sie, ob Sie Suchmaschinen aus der Indexierung Ihrer Site ausschließen wollen:

      WordPress-Setup-Installation

      Wenn Sie bereit sind, klicken Sie auf die Schaltfläche Install WordPress. Sie werden zu einer Seite weitergeleitet, die Sie zur Anmeldung auffordert:

      WordPress-Anmeldung

      Nach der Anmeldung gelangen Sie zum WordPress-Administrations-Dashboard:

      WordPress-Anmeldung

      Vom Dashboard aus können Sie Änderungen am Thema Ihrer Website vornehmen und Inhalte veröffentlichen.

      Zusammenfassung

      Durch die Ausführung dieses Leitfadens haben Sie eine WordPress-Instanz auf einem Ubuntu 18.04-Server, auf dem OpenLiteSpeed ausgeführt wird, installiert und konfiguriert. Einige häufige nächste Schritte sind die Auswahl der Permalink-Einstellungen für Ihre Posts (diese sind unter Einstellungen > Permalinks zu finden) oder die Auswahl eines neuen Designs (in Darstellung > Design). Wenn Sie WordPress das erste Mal verwenden, schauen Sie sich die Oberfläche an, um Ihre neue CMS kennenzulernen.

      Um die Sicherheit Ihrer neuen WordPress-Website zu erhöhen, empfehlen wir Ihnen, sie für die Funktion mit SSL zu konfigurieren, damit sie Inhalte über HTTPS bereitstellen kann. Schauen Sie sich dieses Tutorial aus der OpenLiteSpeed-Dokumentation an, um LetsEncrypt zu installieren und einzurichten.



      Source link