Ubuntu14.04にNginxでWordPressをインストールする方法
序章
WordPressは、世界で最も人気のあるCMS(コンテンツ管理システム)です。 それはあなたが簡単にあなたのサイトやブログを立ち上げて実行することを可能にします。 インストール後、簡単なWebインターフェイスでほとんどすべてを管理できます。
このガイドでは、Ubuntu14.04サーバーにWordPressをインストールする方法について説明します。 Webサーバーコンポーネントには、 nginx を使用します。これは、そのパフォーマンス機能により広く採用されている強力で効率的なWebサーバーです。
前提条件
このガイドを始める前に、実行する必要のある手順がいくつかあります。
まず、sudo権限を持つroot以外のユーザーが必要になります。 Ubuntu 14.04初期サーバーセットアップガイドの手順1〜4を実行して、このアカウントを作成できます。
また、サーバーにLEMP(Linuxオペレーティングシステム、Nginx Webサーバー、MySQLデータベース、およびPHP処理)スタックをインストールして構成する必要があります。 こちらのUbuntu14.04 へのLEMPスタックのインストールに関するガイドに従って、必要なコンポーネントをインストールおよびセットアップする方法を学ぶことができます。
上記の手順が完了したら、続行できます。
ステップ1—WordPress用のMySQLデータベースとユーザーを作成する
WordPressを使い始めるために最初に行う必要があるのは、データベースを準備することです。
MySQLデータベースソフトウェアがインストールされていますが、WordPress情報用のデータベースは作成されていません。 また、WordPressが作成するデータベースにアクセスするために使用できるアカウントを作成する必要があります。
まず、次のようにMySQL管理アカウントを使用してインタラクティブセッションにログインする必要があります。
mysql -u root -p
ソフトウェアのインストール時にMySQLルートアカウント用に選択したパスワードの入力を求められます。 MySQLコマンドプロンプトが表示されます。
これで、WordPressアプリケーションで排他的に使用される別のデータベースを作成できます。 名前は重要ではありませんが、わかりやすいようにわかりやすい名前にする必要があります。 このガイドでは、データベースをwordpress
と呼びます。
CREATEDATABASEワードプレス;
MySQLステートメントを終了するセミコロン(;)に注意してください。 各MySQLステートメントは1で終わる必要があるため、問題が発生していないかどうかを再確認してください。
これでデータベースができたので、ユーザーアカウントを作成する準備が整いました。 次に、データベースの制御をこの新しいユーザーに引き渡して、アプリケーションがデータベースと対話できるようにします。 アプリケーションごとに個別のデータベースとユーザーを作成するこのシステムは、MySQLによって保存されている他のデータからデータを分離するのに役立ちます。これはセキュリティとデータ管理に適しています。
このガイドでは、アカウント名としてwordpressuser
を選択します。 認証に使用するpassword
のパスワードを割り当てます。 独自の構成を設定する場合は、より安全なパスワードを選択する必要があります。
CREATE USER wordpressuser @localhost IDENTIFIEDBY'パスワード';
これで、データベースとユーザーができましたが、まだ2つの関係は確立されていません。 新しいユーザーがデータベースにアクセスして制御できることをMySQLに伝える必要があります。 あなたはこのコマンドでそれをすることができます:
WordPressのすべての特権を付与します。*wordpressuserに @localhost ;
これで、すべてが正しく構成されているはずです。 MySQLの現在のインスタンスが、行った特権の変更を認識できるように、特権をディスクにフラッシュする必要があります。
FLUSH PRIVILEGES;
ここで、MySQLプロンプトを終了します。
exit
これでコマンドプロンプトに戻り、次に進む準備ができました。
ステップ2—WordPressをサーバーにダウンロードします
次に、実際のWordPressコンテンツをサーバーにダウンロードする必要があります。 これはWordPressWebサイトで入手できます。
アプリケーションの最新の安定バージョンには常に同じURLが与えられるため、この部分が簡単になります。 ファイルをユーザーのホームディレクトリにダウンロードします。
cd ~ wget http://wordpress.org/latest.tar.gz
アプリケーションファイルは、latest.tar.gz
というファイルに保存された圧縮されたアーカイブディレクトリ構造としてダウンロードされています。 次のように入力すると、コンテンツを抽出できます。
tar xzvf latest.tar.gz
これにより、サイトファイルを含むwordpress
というディレクトリが作成されます。
この機会に、WordPressインスタンスに必要ないくつかの追加コンポーネントをダウンロードする必要があります。 これらは、apt
を使用してUbuntuのソフトウェアリポジトリから直接取得できます。
sudo apt-get update sudo apt-get install php5-gd libssh2-php
これらの2つのパッケージを使用すると、イメージを操作し、SSHを使用してプラグインとコンポーネントをそれぞれインストール/更新できます。
ステップ3—WordPressを設定する
これでファイルができたので、WordPressインスタンスの構成を開始できます。
新しいディレクトリにあるメインの設定ファイルを変更する必要があります。 前のセクションで抽出したディレクトリに移動します。
cd ~/wordpress
このディレクトリ内には、wp-config-sample.php
というサンプル構成ファイルがあります。 これにより、構成の詳細のほとんどが正しいので、それをコピーして構成ファイルのベースとして使用できます。
cp wp-config-sample.php wp-config.php
ファイルを開くとき、最初の作業は、インストールにセキュリティを提供するためにいくつかの秘密鍵を調整することです。 WordPressは、これらの値の安全なジェネレーターを提供するため、自分で適切な値を考え出す必要はありません。 これらは内部でのみ使用されるため、ここで複雑で安全な値を使用してもユーザビリティが損なわれることはありません。
WordPressシークレットキージェネレーターから安全な値を取得するには、次のように入力します。
curl -s https://api.wordpress.org/secret-key/1.1/salt/
次のような一意の値が返されます。
警告
毎回一意の値を要求することが重要です。 以下に示す値をNOTコピーしないでください!
Outputdefine('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&%');
これらは、安全なキーを設定するために構成ファイルに直接貼り付けることができる構成行です。 今受け取った出力をコピーします。
次に、WordPress構成ファイルを開きます。
nano wp-config.php
それらの設定のダミー値を含むセクションを見つけます。 次のようになります。
/var/www/html/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'); . . .
これらの行を削除し、コマンドラインからコピーした値を貼り付けます。
/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'); . . .
これで、ファイルは私たちのニーズに適合しました。 作成したデータベースに接続するための情報が不足しているだけです。 設定する必要のあるパラメーターは、DB_NAME
、DB_USER
、およびDB_PASSWORD
です。
このファイルでこれらのパラメーターを見つけて、作成したデータベースとユーザーの詳細を使用するように設定できます。 私のファイルは次のようになります。
。 . . //**MySQL設定-この情報はウェブホストから取得できます**///**WordPressのデータベースの名前*/define('DB_NAME'、' wordpress '); /**MySQLデータベースのユーザー名*/define('DB_USER'、' wordpressuser '); /**MySQLデータベースのパスワード*/define('DB_PASSWORD'、' password '); 。 . .
上記の変更を行ったら、ファイルを保存して閉じます。
ステップ4—ファイルをドキュメントルートにコピーします
設定ファイルに変更があります。 次のステップは、それらをドキュメントルートにコピーして、Webサーバーがそれらを見つけて提供できるようにすることです。
rsync
ユーティリティを使用して転送を行います。 これには、アクセス許可、所有権を保持し、データの整合性を確保するという利点があります。
Ubuntu14.04でのnginxのデフォルトのドキュメントルートの場所は/usr/share/nginx/html/
です。
ただし、nginxパッケージによって制御されるディレクトリの場所が変更されないように、/var/www/html/
にドキュメントルートを設定します。 これは、nginx構成で少し後で変更します。
次のように入力して、新しいドキュメントルートディレクトリを作成できます。
sudo mkdir -p /var/www/html
これで、次のように入力して、ファイルをこの場所にコピーできます。
sudo rsync -avP ~/wordpress/ /var/www/html/
これにより、~/wordpress
ディレクトリの内容がドキュメントルートに再帰的にコピーされます。
次に、いくつかの権限を調整できるように、ドキュメントルートに移動しましょう。
cd /var/www/html/
現在のディレクトリ構造の問題は、すべてのファイルにユーザーとグループの所有権が通常のユーザーに割り当てられていることです。 これは問題ありませんが、Webサーバーが特定のディレクトリとファイルを変更できる必要がある場合を除きます。
Webサーバーが実行するグループにファイルのグループ所有権を与えることで、システムをあまり公開せずにこのアクセス許可を与えることができます。 その後、必要に応じてグループ権限を少し開くことができます。
nginxが動作するグループはwww-data
です。 ユーザー部分には、ユーザーアカウント名を入力します。 ここでは、demo
というアカウントでデモンストレーションします。
sudo chown -Rデモ:www-data / var / www / html / *
これにより、ファイルに必要な所有権が与えられます。
先に進む前に、ユーザーがアップロードするための新しいディレクトリを作成する必要があります。
mkdir wp-content/uploads
新しいディレクトリにはすでにグループ書き込みが設定されているはずですが、新しいディレクトリにはまだwww-data
グループ所有権が割り当てられていません。 それを修正しましょう:
sudo chown -R :www-data /var/www/html/wp-content/uploads
ステップ5—Nginxサーバーブロックを変更する
ファイルとディレクトリが構成されています。 次に、コンテンツを正しく提供するためにnginx構成を変更する必要があります。
デフォルトのnginxサーバーブロックを新しいサーバーブロックのベースとして使用できます。 次のようにコピーします。
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/wordpress
変更を加えることができるように、作成した新しいファイルを開きます。
sudo nano /etc/nginx/sites-available/wordpress
次の変更を加えます。
サーバー{リッスン80default_server; リッスン[::]:80 default_server ipv6only = on; root <span class="highlight">/var/www/html</span>; index <span class="highlight">index.php</span> index.html index.htm; server_name <span class="highlight">your_domain.com</span>; location / { <span class="highlight">#</span> try_files $uri $uri/ =404; try_files $uri $uri/ <span class="highlight">/index.php?q=$uri&$args</span>; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; }
}
行う必要のある変更の概要は次のとおりです。
root
ディレクティブの値を変更して、/var/www/html
にある新しいドキュメントルートを指すようにします。index
パラメーターを変更して、他のファイルの前にindex.php
ファイルを探します。server_name
ディレクティブの値を変更して、サーバーのドメイン名またはIPアドレスを指すようにします。location /
ブロック内のtry_files
を調整して、完全に一致しない場合にリクエストをPHPに送信します。
これらの一部は、LEMPインストールからすでに設定されている可能性があります。 これらの変更が終了したら、ファイルを保存して閉じます。
新しいファイルをアクティブにするには、sites-enabled
ディレクトリにリンクする必要があります。 私たちはこのようにそれを行うことができます:
sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
リンクしたばかりのファイルは、古いデフォルトファイルから多くを借用しているため、古いデフォルトファイルと競合します。 古いファイルを無効にする必要があります。
sudo rm /etc/nginx/sites-enabled/default
次に、WebサーバーとPHPプロセッサを再起動して、変更を有効にします。
sudo service nginx restart sudo service php5-fpm restart
ステップ6—Webインターフェイスを介してインストールを完了します
これでWordPressの準備が整い、Webブラウザからインストールを完了できます。
次のように、ブラウザでサーバーのドメイン名またはIPアドレスを指定します。
http://your_domain.com
これにより古いデフォルトのnginxページが表示される場合は、キャッシュなしでページを更新する必要があります。
基本的なWordPressウェルカムステージが表示されます。 オプション(サイト名、ユーザー名、パスワード、および電子メール)を選択し、[WordPressのインストール]ボタンをクリックします。
作成したアカウントでログインする必要があります。
WordPressダッシュボードが表示され、セットアップのカスタマイズとコンテンツの作成を開始できます。
結論
これで、WordPressインスタンスがUbuntu14.04のnginxWebサーバーで稼働しているはずです。 WordPressは、サイトをカスタマイズするために使用できるかなり柔軟なプラットフォームです。 いくつかの異なるプラグイン、テーマなどを試してみてください。 何があなたに最適かを見つけるために。