Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Installation von WordPress 5 auf ZEIT Now mit MySQL Hosting

Der ZEIT @now/wordpress builder ist offiziell veraltet und die ZEIT kann die Leistung/Zuverlässigkeit des @ now/php Community Builder.

Wollen Sie WordPress 5.0 auf der Now-Plattform von ZEIT einsetzen? Unsere Freunde von der globalen serverlosen Bereitstellungsplattform Now von ZEIT haben ein großartiges Tutorial für WordPress5-on-Now erstellt, das günstige MySQL-Hosting-Instanzen von ScaleGrid verwendet. Aufgrund des starken Interesses an dieser Installation haben wir uns entschlossen, die Schritte zur Konfiguration Ihrer MySQL-Datenbank auf der ScaleGrid-Seite aufzuschreiben, damit Sie mit WordPress on Now noch schneller einsatzbereit sind.

Warum brauchen Sie also MySQL-Hosting bei ZEIT Now? Now konzentriert sich darauf, die beste Plattform für serverloses Hosting zu sein, aber Sie müssen einen Weg finden, Ihre Daten dauerhaft zu speichern. Hier kommt ScaleGrid ins Spiel. Sie können vollständig verwaltetes MySQL auf Azure für nur 8 $/Monat für die reine Verwaltung oder 18 $/Monat mit integriertem Hosting auf dedizierten Servern einrichten.

Das Beste daran ist, dass Sie es nur einrichten müssen und Ihre MySQL-Datenbank dann auf Autopilot ausgeführt wird, sodass Sie sich bei Ihrer Entwicklung auf das Produkt konzentrieren können und nicht auf diese zeitaufwändigen Datenbankoperationen. Fangen wir an!

Einrichten Ihrer MySQL-Datenbank für WordPress auf ZEIT Now

Erstellen Sie eine MySQL-Datenbank in ScaleGrid

  1. Melden Sie sich für eine kostenlose 30-Tage-Testversion auf der ScaleGrid-Konsole an.
  2. Erstellen Sie Ihren ersten MySQL-Cluster. Stellen Sie sicher, dass Sie es in einer Region erstellen, die Ihrer Now-Bereitstellungsregion entspricht. Wir unterstützen zwei verschiedene MySQL DBaaS-Pläne (vergleiche MySQL-Pläne):
    • Dedizierter MySQL-Cluster – gehostet über Ihr ScaleGrid-Konto.
    • BYOC-MySQL-Cluster – über Ihr eigenes Azure-Konto gehostet.
    • WICHTIGER HINWEIS – Beim Erstellen eines ScaleGrid-Clusters müssen Sie alle IPs (0.0.0.0/0) in Schritt 4. Firewall-Regeln auf die Whitelist setzen. Dies liegt daran, dass die IP-Adressen von ZEIT Now-Bereitstellungen dynamisch und unvorhersehbar sind, und Sie können mehr in ihrem Dokument Wie füge ich meine Bereitstellungen zu einer Liste von IP-Adressen auf der weißen Liste hinzu?
    • erfahren
  3. Sobald Ihr Cluster eingerichtet ist, gehen Sie zu Ihrer MySQL-Clusterdetailseite, wählen Sie die Registerkarte "Datenbanken" und klicken Sie auf die grüne Schaltfläche "Neue Datenbank". .
  4. Geben Sie im sich öffnenden Fenster „Neue Datenbank erstellen“ einfach einen Namen für Ihre Datenbank ein und klicken Sie auf „Erstellen“.
  5. Deine Datenbank wird jetzt erstellt! Sie können jederzeit unter der Registerkarte „Datenbanken“ Ihres MySQL-Clusters darauf zugreifen. Notieren Sie sich Ihren Datenbanknamen, damit Sie ihn in unseren späteren Schritten mit ZEIT Now verwenden können.

Erstellen Sie einen neuen Benutzer für Ihre MySQL-Datenbank

  1. Gehen Sie zu Ihrer MySQL-Cluster-Detailseite, wählen Sie die Registerkarte "Benutzer" und klicken Sie auf die Schaltfläche "Neuer Benutzer".
  2. Wählen Sie im Fenster „Neuer Benutzer“ die Datenbank, die Sie gerade erstellt haben, aus der Dropdown-Liste „Datenbank(en) auswählen, auf die der Benutzer zugreifen darf“ aus.
  3. Geben Sie einen „Namen“ und ein „Passwort“ für den neuen Benutzer ein.
  4. Stellen Sie sicher, dass Sie im Dropdown-Menü „Rolle“ als Rolle „Lesen – Schreiben“ auswählen, damit der neue Benutzer vollständige Schreibberechtigungen für diese Datenbank hat.
  5. Klicken Sie auf „Erstellen“ und Ihr neuer Benutzer wird erstellt! Notieren Sie sich Ihren neuen Datenbank-Benutzernamen und Ihr Passwort, damit Sie es beim Einrichten von ZEIT Now auf WordPress verwenden können.

Suchen Sie sich den Hostnamen Ihrer MySQL-Bereitstellung

  1. Gehen Sie zur Seite mit den MySQL-Clusterdetails und wählen Sie die Registerkarte „Übersicht“ aus.
  2. Suchen Sie den Abschnitt Befehlszeilensyntax unten auf der Seite, um den Befehl anzuzeigen, der verwendet werden kann, um Ihre MySQL-Bereitstellung über den mysql-Client zu verbinden.
  3. Der Servername nach der Option „-h“ ist der Hostname Ihrer MySQL-Bereitstellung und in diesem speziellen Fall „SG-help- 1-master.devservers.scalegrid.io'.
  4. Notieren Sie sich Ihren MySQL-Hostnamen, um ihn in unseren nächsten Schritten mit ZEIT Now und WordPress zu verwenden.

Herunterladen Ihrer ca.pem-Datei

  1. Gehen Sie zu Ihrer MySQL-Cluster-Detailseite und wählen Sie die Registerkarte "Übersicht".
  2. Wenn Ihre MySQL-Bereitstellung SSL-fähig ist, sehen Sie einen Abschnitt „SSL-Zertifikat“
  3. Klicken Sie auf den Link „SSL-CA-Zertifikat abrufen“, um den Inhalt Ihres CA-Zertifikats anzuzeigen, und kopieren Sie diesen Inhalt in Ihre ca.pem-Datei.

Sie haben jetzt alles, was Sie brauchen, um Ihr WordPress auf ZEIT Now mit MySQL-Instanzen einzurichten! Die im unten stehenden Tutorial beschriebenen Schritte wurden von ZEIT Now entwickelt, und Sie können die Originalanleitung hier bei WordPress5-on-Now lesen oder unten folgen.

Installation von WordPress 5 auf ZEIT Jetzt mit MySQL-HostingClick To Tweet

WordPress 5 auf ZEIT Now einrichten

Jetzt installieren. npm i -g now wenn wenig Zeit. Richten Sie eine Datenbank bei einem Cloud-SQL-Hostinganbieter wie ScaleGrid ein. Stellen Sie sicher, dass Sie einen Standort auswählen, der mit einer Now-Bereitstellungsregion übereinstimmt. Erstellen Sie eine wp-config.php Datei und eine now.json Datei. Ihre now.json Datei wird den @now/wordpress einrichten Builder und ein paar Routen:

{
  "version": 2,
  "builds": [
    { "src": "wp-config.php", "use": "@now/wordpress" }
  ],
  "routes": [
    { "src": "/wp-admin/?", "dest": "index.php" },
    { "src": ".*\\.php$", "dest": "index.php" }
  ],
  "env": {
    "DB_NAME": "@wordpress_db_name",
    "DB_USER": "@wordpress_db_user",
    "DB_PASSWORD": "@wordpress_db_password",
    "DB_HOST": "@wordpress_db_host"
  }
}

Beachten Sie, dass es sich auf ein paar Geheimnisse wie @wordpress_db_name bezieht . Sie können diese mit now secret add erstellen . Meine wp-config.php sieht wie folgt aus. Beachten Sie, dass wir aus Sicherheitsgründen MySQL über TLS verwenden.

<?php
/**
 * The base configuration for WordPress
 *
 * The wp-config.php creation script uses this file during the
 * installation. You don't have to use the web site, you can
 * copy this file to "wp-config.php" and fill in the values.
 *
 * This file contains the following configurations:
 *
 * * MySQL settings
 * * Secret keys
 * * Database table prefix
 * * ABSPATH
 *
 * @link https://codex.wordpress.org/Editing_wp-config.php
 *
 * @package WordPress
 */

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', $_ENV['DB_NAME']);

/** MySQL database username */
define('DB_USER', $_ENV['DB_USER']);

/** MySQL database password */
define('DB_PASSWORD', $_ENV['DB_PASSWORD']);

/** MySQL hostname */
define('DB_HOST', $_ENV['DB_HOST']);

/** 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', '');

/**#@+
 * Authentication Unique Keys and Salts.
 *
 * Change these to different unique phrases!
 * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
 * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
 *
 * @since 2.6.0
 */
define('AUTH_KEY',         'WPSALT');
define('SECURE_AUTH_KEY',  'WPSALT');
define('LOGGED_IN_KEY',    'WPSALT');
define('NONCE_KEY',        'WPSALT');
define('AUTH_SALT',        'WPSALT');
define('SECURE_AUTH_SALT', 'WPSALT');
define('LOGGED_IN_SALT',   'WPSALT');
define('NONCE_SALT',       'WPSALT');

/**#@-*/

/**
 * WordPress Database Table prefix.
 *
 * You can have multiple installations in one database if you give each
 * a unique prefix. Only numbers, letters, and underscores please!
 */
$table_prefix  = 'wp_';

/**
 * For developers: WordPress debugging mode.
 *
 * Change this to true to enable the display of notices during development.
 * It is strongly recommended that plugin and theme developers use WP_DEBUG
 * in their development environments.
 *
 * For information on other constants that can be used for debugging,
 * visit the Codex.
 *
 * @link https://codex.wordpress.org/Debugging_in_WordPress
 */
define('WP_DEBUG', false);

define( 'WP_SITEURL', 'https://' . $_SERVER['HTTP_HOST'] );
define( 'WP_HOME', 'https://' . $_SERVER['HTTP_HOST'] );
define( 'WP_CONTENT_URL', 'https://' . $_SERVER['HTTP_HOST'] . '/wp-content' );

/* That's all, stop editing! Happy blogging. */

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
        define('ABSPATH', dirname(__FILE__) . '/');

define( 'MYSQL_SSL_CA', ABSPATH . 'ca.pem' );
define( 'MYSQL_CLIENT_FLAGS', MYSQLI_CLIENT_SSL );

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');

Stellen Sie sicher, dass Sie Ihren WPSALT ändern zu einer zufälligen Zeichenfolge oder einem Geheimnis, das als $_ENV übergeben wird . Schließlich haben wir eine ca.pem erstellt von ScaleGrid heruntergeladene Datei. Dies ist nur erforderlich, wenn MySQL über TLS verwendet wird. Das ist es! Führen Sie dann now aus bereitzustellen oder git push wenn Sie Now + GitHub konfiguriert haben.

Wenn es andere Szenarien gibt, in denen Sie ZEIT mit den Hosting- und Verwaltungsplänen von ScaleGrid für MySQL, MongoDB®, Redis™* oder PostgreSQL verwenden möchten, hinterlassen Sie uns unten einen Kommentar und wir schreiben sie gerne auf! Teilen Sie außerdem alle Fragen in unseren Kommentaren oder auf Twitter unter @scalegridio und wir melden uns, um Ihnen zu helfen.

Um zu erfahren, wie Sie Ihre WordPress-Installation mit Redis Caching beschleunigen können, sehen Sie sich unseren Post Using Redis Object Cache to Speed ​​Up Your WordPress Installation an.