Ubuntu 16.04でLAMPを使ってWordPressをインストールする方法
ステップ1:WordPress用のMySQLデータベースとユーザを作成する
私たちが取る最初のステップは準備的なものです。WordPressはMySQLを使用してサイトとユーザーの情報を管理し保存します。私たちはすでにMySQLをインストールしていますが、WordPress用のデータベースとユーザーを作成する必要があります。
$ mysql -u root -p
WordPressのデータベースを作成するには、次のように入力します。
mysql> CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
次に、別のMySQLユーザーアカウントを作成し、新しいデータベースを操作するために使用します
mysql> GRANT ALL ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
mysql > exit
ステップ2:追加のPHP拡張機能をインストールする
WordPressで使用する最も一般的なPHP拡張モジュールをダウンロードしてインストールするには、次のように入力します。
$ sudo apt-get update
$ sudo apt-get install php-curl php-gd php-mbstring php-mcrypt php-xml php-xmlrpc
$ sudo systemctl restart apache2
ステップ3:.htaccessの上書きと書き換えを許可するApacheの設定を調整する
次に、Apacheの設定を少し変更します。現在、.htaccess
ファイルの使用は無効になっています。WordPressと多くのWordPressプラグインは、これらのファイルをWebサーバーの動作にディレクトリ内で調整するために幅広く使用します。
さらに、mod_rewrite
WordPressのパーマリンクを正しく機能させるために必要な機能も有効にします。
.htaccessオーバーライドを有効にする
最初の変更を行うためにプライマリApache設定ファイルを開きます:
$ sudo vi /etc/apache2/apache2.conf
.htaccess
ファイルを許可するには、ドキュメントルートを指すブロックAllowOverride
内にディレクティブを設定する必要がありますDirectory
。ファイルの末尾に、次のブロックを追加します。
. . .
<Directory /var/www/html/>
AllowOverride All
</Directory>
. . .
書き換えモジュールを有効にする
次に、mod_rewrite
WordPressのパーマリンク機能を利用できるようにします。
$ sudo a2enmod rewrite
変更を有効にする
変更を実装する前に、構文エラーがないことを確認してください:
$ sudo apache2ctl configtest
$ sudo systemctl restart apache2
ステップ4:WordPressをダウンロードする
$ cd /tmp
$ curl -O https://wordpress.org/latest.tar.gz
$ tar xzvf latest.tar.gz
$ touch /tmp/wordpress/.htaccess
$ chmod 660 /tmp/wordpress/.htaccess
またサンプル設定ファイルをWordPressが実際に読み込むファイル名にコピーします:
$ cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php
upgrade
ディレクトリを作成することもできます。そのため、WordPressは、ソフトウェアの更新後にWordPressが独自の方法で権限の問題に遭遇することはありません。
$ mkdir /tmp/wordpress/wp-content/upgrade
これで、ディレクトリの内容全体がドキュメントルートにコピーされます。この-a
フラグを使用して、権限が維持されていることを確認しています。ソースディレクトリの最後にドットを使用して、隠しファイル(.htaccess
作成したファイルなど)を含め、ディレクトリ内のすべてをコピーする必要があることを示します。
$ sudo cp -a /tmp/wordpress/. /var/www/html
手順5:WordPressディレクトリを構成する
WebベースのWordPressセットアップを行う前に、WordPressディレクトリのいくつかの項目を調整する必要があります。
所有権と権限の調整
達成するために必要な大きなものの1つは、妥当なファイルのアクセス許可と所有権を設定することです。通常のユーザーとしてこれらのファイルに書き込むことができる必要があります。また、正常に機能するためには、特定のファイルやディレクトリにアクセスして調整できるようにWebサーバーが必要です。
まず、ドキュメントルートのすべてのファイルに対する所有権をユーザ名に割り当てることから始めます。ckenko25このガイドではユーザー名として使用しますが、sudo
ユーザーの名前と一致するようにこれを変更する必要があります。グループの所有権をグループに割り当てwww-data
ます。
$ sudo chown -R ckenko25:www-data /var/www/html
次に、setgid
ドキュメントルート内の各ディレクトリのビットを設定します。これにより、これらのディレクトリ内に作成された新しいファイルwww-data
は、作成するユーザーのプライマリグループではなく、親ディレクトリのグループを継承します。これは、コマンドライン上のディレクトリにファイルを作成するたびに、Webサーバーは引き続きその上にグループ所有権を持ちます。
setgid
WordPressインストールの各ディレクトリに次のように入力してビットを設定できます。
$ sudo find /var/www/html -type d -exec chmod g+s {} \;
私たちが調整するその他の細かい権限がいくつかあります。まず、wp-content
ディレクトリへのグループ書き込みアクセス権を与えて、Webインタフェースがテーマとプラグインの変更を行うようにします:
$ sudo chmod g+w /var/www/html/wp-content
このプロセスの一環として、次の2つのディレクトリにあるすべてのコンテンツへのWebサーバーへの書き込みアクセス権を与えます。
$ sudo chmod -R g+w /var/www/html/wp-content/themes
$ sudo chmod -R g+w /var/www/html/wp-content/plugins
WordPress設定ファイルの設定
ここでは、メインのWordPress設定ファイルをいくつか変更する必要があります。
ファイルを開くときには、インストールのセキュリティを確保するためにいくつかの秘密鍵を調整することが最初のビジネスです。WordPressはこれらの値のための安全なジェネレータを提供していますので、あなた自身で良い値を出そうとする必要はありません。これらは内部でのみ使用されるため、ここでは複雑で安全な値を持つユーザビリティが損なわれることはありません。
WordPressの秘密鍵ジェネレータから安全な値を取得するには、次のように入力します。
$ curl -s https://api.wordpress.org/secret-key/1.1/salt/
これらの設定行は、設定ファイルに直接貼り付けて安全な鍵を設定することができます。今すぐ受け取った出力をコピーします。
さて、WordPressの設定ファイルを開きます:
$ vi /var/www/html/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');
. . .
次に、ファイルの先頭でいくつかのデータベース接続設定を変更する必要があります。MySQLで設定したデータベース名、データベースユーザ、および関連するパスワードを調整する必要があります。
もう一つの変更は、WordPressがファイルシステムに書き込むために使うべき方法を設定することです。Webサーバに必要な場所への書き込み権限を与えているので、ファイルシステムメソッドを明示的に “direct”に設定することができます。現在の設定でこれを設定しないと、WordPressがいくつかの操作を実行するときにFTPの資格情報を要求するようになります。
この設定は、データベース接続設定の下、またはファイル内の他の場所に追加できます。
次に、ファイルの先頭でいくつかのデータベース接続設定を変更する必要があります。MySQLで設定したデータベース名、データベースユーザ、および関連するパスワードを調整する必要があります。
もう一つの変更は、WordPressがファイルシステムに書き込むために使うべき方法を設定することです。Webサーバに必要な場所への書き込み権限を与えているので、ファイルシステムメソッドを明示的に “direct”に設定することができます。現在の設定でこれを設定しないと、WordPressがいくつかの操作を実行するときにFTPの資格情報を要求するようになります。
この設定は、データベース接続設定の下、またはファイル内の他の場所に追加できます。
$ vi /var/www/html/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');
手順6:Webインターフェイスによるインストールの完了
サーバーの設定が完了したので、Webインターフェイスを使用してインストールを完了できます。
Webブラウザで、サーバーのドメイン名またはパブリックIPアドレスに移動します。
http://server_domain_or_IP
WordPressのアップグレード
WordPressのアップグレードが利用可能になると、現在の権限を持つインターフェイスからインストールすることができなくなります。
ここで選択したアクセス許可は、アップグレードとアップグレードの間の99%の間、セキュリティとユーザビリティのバランスを良好にすることを目的としています。しかし、ソフトウェアがアップデートを自動的に適用するには、あまりにも制限があります。
アップデートが利用可能になると、あなたのsudo
ユーザとしてサーバに再度ログインします。一時的にWebサーバーにドキュメントルート全体へのアクセスを許可する:
$ sudo chown -R www-data /var/www/html
さて、WordPressの管理パネルに戻り、アップデートを適用してください。
作業が終了したら、セキュリティのために再び権限をロックします。
$ sudo chown -R sammy /var/www/html
これは、WordPress自体にアップグレードを適用する場合にのみ必要です。
コメント