LoginSignup
0
0

More than 1 year has passed since last update.

WindowsにXAMPP 7.4とWordPress 6.0をインストールする手順

Last updated at Posted at 2022-06-29
../

WindowsにEclipseとPHPはインストール済みである。pleiades-2022-06-php-win-64bit-jre_20220619.exe になる。MySQLは以前から使用中のものを継続して使う。

  • Eclipse 2022-06 (4.24)
  • PHP 7.4.29
  • MySQL 5.6.46

この環境に、XAMPP 7.4.29 と WordPress 6.0 をインストールして開発環境を整えたい。

  • XAMPP 7.4.29
  • WordPress 6.0

XAMPP 7.4.29のインストール

XAMPPは、https://www.apachefriends.org/jp/ からWindows向け「XAMPP 7.4.29 (PHP 7.4.29)」をダウンロードした。最新版は「XAMPP 8.1.6 (PHP 8.1.6)」のようだったが、既存のPHPのバージョンに合わせた。

xampp-windows-x64-7.4.29-1-VC15-installer.exe を実行した。コンポーネントからはMySQLを除外した。
xampp-components.png

インストール先は、Pleiades配下の C:\pleiades-xxx\xampp にした。インストールが終わるとXAMPP Control Panelが開く。Apacheのみを起動(start)してみた。
xampp-control-panel.png

WordPress 6.0のインストール

WordPressは、https://ja.wordpress.org/download/ の「WordPress 6.0 をダウンロード」から wordpress-6.0-ja.zip をダウンロードした。これを展開して、xampp配下の C:\pleiades-xxx\xampp\htdocs\wp に配置した。wordpressではなく、短いwpというフォルダにしてみた。今後は、workspaceを C:\pleiades-xxx\xampp\htdocs にする。

MySQLにWordPressのDBとユーザーを作成する。DB名「wp」、ユーザー「wpadmin」とした。

# mysql -uroot -p mysql
Enter password: ***
> create database wp;
> show databases;
> create user 'wpadmin'@'localhost' identified by 'xxx';     // wpadmin追加
> grant all privileges on wp.* TO 'wpadmin'@'localhost';     // wpadminの権限
> flush privileges;
> select user,host from user;
> exit;

# mysql -uwpadmin -p wp
Enter password: xxx
> show tables;
Empty set (0.00 sec)

WordPress 6.0のセットアップ

Eclipse上でPHPビルトインサーバーを起動する。インストールしたwpも同期させておく。

プロジェクトエクスプローラから wp/wp-admin/index.php を選択して、サーバーで実行させると、ブラウザで http://localhost:8488/wp/wp-admin/setup-config.php が開く。順次入力して、ウィザードを進める。

データベース名			wp
ユーザー名				wpadmin		// MySQLのuser
パスワード				***			// MySQLのpassword
データベースのホスト名		localhost
テーブル接頭辞			wp_

サイトのタイトル	  		xxx.com
ユーザー名				taconana	// サイト管理者のID
パスワード				***			// サイト管理者のpassword
メールアドレス			xxx@xxx.com

「成功しました !」が出たら、先ほど設定したユーザー名とパスワードでログインする。
ダッシュボード (http://localhost:8488/wp/wp-admin/) が開く。
サイト (http://localhost:8488/wp/) を開くと、1羽の小鳥が飛ぶサンプルページが開く。

wp-config.phpの作成

wp-config-sample.phpをコピーしてwp-config.phpを作成しておく。中ほどにデータベース名、ユーザー名、パスワードなどを埋め込む。また秘密鍵も生成して、埋め込んでおく。

wp-config.php
<?php
/**
 * WordPress の基本設定
 *
 * このファイルは、インストール時に wp-config.php 作成ウィザードが利用します。
 * ウィザードを介さずにこのファイルを "wp-config.php" という名前でコピーして
 * 直接編集して値を入力してもかまいません。
 *
 * このファイルは、以下の設定を含みます。
 *
 * * データベース設定
 * * 秘密鍵
 * * データベーステーブル接頭辞
 * * ABSPATH
 *
 * @link https://ja.wordpress.org/support/article/editing-wp-config-php/
 *
 * @package WordPress
 */

// 注意:
// Windows の "メモ帳" でこのファイルを編集しないでください !
// 問題なく使えるテキストエディタ
// (http://wpdocs.osdn.jp/%E7%94%A8%E8%AA%9E%E9%9B%86#.E3.83.86.E3.82.AD.E3.82.B9.E3.83.88.E3.82.A8.E3.83.87.E3.82.A3.E3.82.BF 参照)
// を使用し、必ず UTF-8 の BOM なし (UTF-8N) で保存してください。

// ** データベース設定 - この情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define( 'DB_NAME', 'wp' );						// 適宜変更する

/** データベースのユーザー名 */
define( 'DB_USER', 'wpadmin' );					// 適宜変更する

/** データベースのパスワード */
define( 'DB_PASSWORD', 'xxx' );					// 適宜変更すること

/** データベースのホスト名 */
define( 'DB_HOST', 'localhost' );

/** データベースのテーブルを作成する際のデータベースの文字セット */
define( 'DB_CHARSET', 'utf8' );

/** データベースの照合順序 (ほとんどの場合変更する必要はありません) */
define( 'DB_COLLATE', '' );

/**#@+
 * 認証用ユニークキー
 *
 * それぞれを異なるユニーク (一意) な文字列に変更してください。
 * {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org の秘密鍵サービス} で自動生成することもできます。
 * 後でいつでも変更して、既存のすべての cookie を無効にできます。これにより、すべてのユーザーを強制的に再ログインさせることになります。
 *
 * @since 2.6.0
 */
// 以下は、https://api.wordpress.org/secret-key/1.1/salt/ にアクセスして表示されるテキストをコピペする
define('AUTH_KEY',         'htUaS  DAjiw2($J&@5...');
define('SECURE_AUTH_KEY',  'VUC+|U*%IaPnQY|XMH&...');
define('LOGGED_IN_KEY',    '{{&NV[T2}DnR2!2U~7_...');
define('NONCE_KEY',        ']-vB+wEd_Ploo{Tf O4...');
define('AUTH_SALT',        'qt.La?1|Cpc7i?.so6r...');
define('SECURE_AUTH_SALT', ' l<^iY~P&#+0P<na]^I...');
define('LOGGED_IN_SALT',   'Lwn./_X+,9SMPLnIr!=...');
define('NONCE_SALT',       '_tw9,.EJ-bd,o*I5X%u...');

/**#@-*/

/**
 * WordPress データベーステーブルの接頭辞
 *
 * それぞれにユニーク (一意) な接頭辞を与えることで一つのデータベースに複数の WordPress を
 * インストールすることができます。半角英数字と下線のみを使用してください。
 */
$table_prefix = 'wp_';

/**
 * 開発者へ: WordPress デバッグモード
 *
 * この値を true にすると、開発中に注意 (notice) を表示します。
 * テーマおよびプラグインの開発者には、その開発環境においてこの WP_DEBUG を使用することを強く推奨します。
 *
 * その他のデバッグに利用できる定数についてはドキュメンテーションをご覧ください。
 *
 * @link https://ja.wordpress.org/support/article/debugging-in-wordpress/
 */
define( 'WP_DEBUG', false );

/* カスタム値は、この行と「編集が必要なのはここまでです」の行の間に追加してください。 */


/* 編集が必要なのはここまでです ! WordPress でのパブリッシングをお楽しみください。 */

/** Absolute path to the WordPress directory. */
if ( ! defined( 'ABSPATH' ) ) {
	define( 'ABSPATH', __DIR__ . '/' );
}

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

WordPress のサイトヘルスに対応

ダッシュボードから「ツール -> サイトヘルス」を開いてみると、いくつかの致命的な問題とおすすめの改善が出ていた。対応しておきたい。

  • REST API でエラーが発生しました
  • サイトでループバックリクエストが完了できませんでした

この2つの問題は、不要なテーマを削除するといいらしい。保留としておく。

  • 停止中のプラグインを削除してください
  • 停止中のテーマを削除してください

この2つも、使わないプラグインやテーマを削除しておけというもの。とりあえず無視していい。たとえば「サイトには WordPress のデフォルトテーマ Twenty Twenty-Two と現在有効なテーマ Twenty Twenty-One を除いて、1個の停止中のテーマがあります。 サイトのセキュリティ向上のため、未使用のテーマの削除を検討してください」などと教えてくれる。

  • 1つ以上の推奨モジュールが存在しません

詳細をみると「モジュール imagickとintlがインストールされていないか、無効化されている」と言っている。php.ini を修正した。intl はコメントを外すだけでよい。imagick は、行を追加した。

;extension=intl
extension=intl
extension=imagick

php_imagick.dll は、標準のPHPには含まれていないので、別途ダウンロードして所定の場所に配置する。私は、https://pecl.php.net/package/imagick からダウンロードして、DLLを C:\pleiades-xxx\xampp\php\ext に配置した。

  • https://pecl.php.net/package/imagick にアクセス
  • 「3.7.0 stable 2022-01-11 imagick-3.7.0.tgz」の隣にある「DLL」のリンクがWindows版である。紛らわしいので注意!
  • PHP 7.4の「7.4 Thread Safe (TS) x64」をダウンロードする。NTS版やx86版を選ばないように!
  • ダウンロードした php_imagick-3.7.0-7.4-ts-vc15-x64.zip を展開
  • 展開した直下のフォルダに、php_imagick.dll がある
  • それを、C:\pleiades-xxx\xampp\php\ext にコピーする

Elcipseを再起動して、サービスを再開させ、「1つ以上の推奨モジュールが存在しません」のメッセージは消えた。

EclipseからPHPビルトインサーバーを使うとき

EclipseからPHPビルトインサーバーを起動して利用するとき、ポートが8488以外にならないように、server.xmlで固定しておく必要がある。サーバーを一旦削除して、新たにサーバーを追加するような操作を行うと、新たなポートが割り当てられる。なので、サーバーを開始する前にserver.xmlを編集してポート番号を戻しておく。WordPressは、DB内の各所でURIとして「localhost:ポート番号」を埋め込んだまま保持しているようだ。そのため、ポートが変わるとアクセスできなくなる。何か、他に効率的なやり方があるのかな。

../
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0