admin2件のコメントTweetWordPressの公式オンラインマニュアル(ドキュメント)であるCodexには、スタートガイドがありWordPressのインストールから設定まで詳しく書かれています。スタートガイドにはサーバに関する説明も含まれています。サーバ要件の説明の一部をみてみます。WEBアプリ開発をしていないと、いきなり上記のようなことを言われてもわからない方も多いと思います。ApachePHPMySQL上記の3つの言葉は、サーバを選定するにもWordPressのバージョンを選定するにも非常に重要です。これら3つの言葉とWordPressとの関係について簡単にまとめたいと思います。WordPerssはWebアプリケーションWebアプリケーションについてみていきます。IT用語辞典e-Wordsさんの説明を引用します。Webの技術を利用して構築されたアプリケーションソフトのこと。利用者は操作するWebブラウザや専用のクライアントソフトなどを用いてWebサーバにアクセスし、必要なデータの処理や転送を指示する。技術的には、通信プロトコルにHTTPを、データの表現にHTMLやXMLを用いるアプリケーションソフトの総称。簡単に言えば、インターネット(イントラネット)を利用して使うアプリケーションソフトのこと。ソフトはサーバ側に置きます。WordPressもWebアプリケーションなのでサーバ側にインストールします。スタートガイドにサーバの用意という項目があるのですね。ブラウザ(クライアント)はURLを通してサーバに欲しい情報をリクエスト(要求)します。リクエストを受け取ったサーバは、リクエスト内容を判断して処理を行いレスポンス(結果)を返します。WordPressにおいては、ブラウザは見たいブログやCMSの内容をURLを通してリクエストします。サーバ側にあるWordPressはリクエスト内容からブラウザが解釈できるHTML形式の情報をつくり、レスポンス(結果)を返します。サーバの3層構成サーバ側の構成を少し詳しくみてみます。Webアプリケーションではサーバ側を3層構成で表現することがあります。WEBサーバWebサーバは、HTML文書や画像などの情報を蓄積しておき、Webブラウザなどのクライアントソフトウェアの要求に応じて、インターネットなどのネットワークを通じて、これらの情報を送信する役割を果たす。レンタルサーバを借りたことがある人は、FTPアカウントをもらっていると思います。FTPを利用してサーバにhtmlファイルや画像ファイルなどをアップロードし、ホームページとして見ることができます。URLはファイルのあるサーバへのアドレスと、そのサーバでのファイルの置き場所を示しています。ブラウザなどのクライアントソフトウェアからURLを通してリクエストを受けると、URLから要求されているファイルを探しクライアントソフトウェアに返すのがWEBサーバの主な働きです。アプリケーションサーバプログラムの実行環境やデータベースへの接続機能、複数の処理を連結するトランザクション管理機能などを持ち、業務の処理の流れを制御するビジネスロジックを実装しているのがアプリケーションサーバである。掲示板やブログなどはプログラムで記述されています。その記述されているプログラムを解釈して実行する環境を整えるのがアプリケーションサーバです。WordPressもプログラムで記述されてますので、そのプログラムを実行できる環境がアプリケーションサーバになければWordPressは動きません。javascriptもプログラムで記述されていますが、javascriptのプログラムを解釈して実行するのはブラウザが行います。ブラウザはクライアント側にあり、javascriptのようにクライアント側で実行するプログラムを「クライアントサイド・スクリプト」といいます。それに対して、アプリケーションサーバが実行するプログラムを「サーバサイド・スクリプト」といいます。プログラムによってはデータ管理のスペシャリストであるデータベースを利用することがあります。そのデータベースとの橋渡しをします。データベースサーバ複数のサーバが役割分担をしているようなシステムにおいて、データベース管理システム(DBMS)が稼動しているサーバのこと。クライアントやアプリケーションサーバ(APサーバ)に要求されたデータを送信したり、操作要求を受け付けてデータを書き換えたり削除したりする。データベースはデータ管理のスペシャリストです。書店や図書館で書籍が何も管理されていないで無造作に置かれていると、欲しい書籍を探すのも非常に大変です。規則に従った分類で管理されているからこそ簡単に探し出すことができます。システムで扱うデータも無造作に保存されていては、そのデータを検索、更新、削除するのは非常に大変です。データベースは規則に従って簡単にデータを検索、更新、削除できる仕組み提供してくれます。前項でサーバの3層構成についてみました。この3層構成とApache、PHP、MySQLの関係についてみていきます。WEBサーバとApacheApacheはWebサーバソフトの1つWEBサーバの機能を提供するWEBサーバソフトにもいくつかあります。Apache、NGINX、IISなどです。Apacheは、世界中でもっとも使われているWebサーバソフトウェアであり、大規模な商用サイトから自宅サーバまで幅広く利用されています。HTTPサーバプロジェクトで行われています。アプリケーションサーバとPHPPHPはサーバ上で動作するプログラム言語の1つサーバ上で動作するプログラム言語はいくつもあります。PHP、Perl、Ruby、JAVAなどです。PHPは、動的にHTMLデータを生成することによって、動的なウェブページを実現することを主な目的としたプログラミング言語、およびその言語処理系です。PHPはサーバーサイド・スクリプト言語として利用されており、Webサーバ上で動作し、Webサーバ上でPHPスクリプトの文書が要求されるたびに、そのPHPスクリプトが実行され、結果をウェブブラウザに対して送信します。データベースサーバとMySQLMySQLはデータベース管理システムの1つデータベース管理システムにはいくつもあります。データベース管理システムです。データベースとは、構造化されたデータの集合です。データベースには、簡単なショッピングリストから絵画のギャラリー、または社内ネットワークの膨大な量の情報など、さまざまなものがあります。サーバのようなデータベース管理システムが必要となります。前項でサーバの3層構造とapache、PHP、MySQLの関係についてみました。WEBサーバにもアプリケーションサーバにもデータベースサーバにも候補はたくさんありました。WordPressはたくさんの候補の中からapache、PHP、MySQLをサーバ要件としているのかみてみます。Apacheパーマリンク、マルチサイトはWebサーバの機能を使ってるWordPressにはパーマリンク、マルチサイトといった機能があります。この機能を使うには.htaccessというファイルを使います。.htaccess(ドットエイチティーアクセス)は、Apacheを用いたWebサーバにおいて、ディレクトリ単位で設置及び設定を行える設定ファイルです。このファイルが動作する必要があるため、Apacheが推奨されています。PHPWordPressはPHPで書かれたプログラムであるWordPressはPHP言語で書かれたプログラムです。よってアプリケーションサーバとしてPHP言語を解釈し実行する環境が必要になります。MySQLWordPressはMySQLにデータを保存すること前提に書かれているWordPressは投稿などのデータをデータベース管理システムを使って保存します。多くのデータベース管理システムからWordPressはMySQLを使うことを前提としてプログラムが書かれています。WordPressの処理の流れでは最後にWordPressの処理の流れをみながらApache、PHP、MySQLの繋がりをみていきます。1ブラウザからのリクエストブラウザはURLを通してWordPressのみたいページをサーバにリクエストします。2URLの解釈サーバではURLをWEBサーバのApacheが解釈し、リクエストされたファイルを探します。そのファイルがPHPプログラムならアプリケーションサーバに解釈・実行をお願いします。3PHPの解釈・実行アプリケーションサーバはPHPプログラムを解釈します。プログラムによってはデータの保存、読み込みが必要になります。必要ならばMySQLにデータ管理をお願いします。4データ管理PHPからデータの保存、読み込みの要求に応じます。データを要求されたらデータベースから必要データを探し出しphpに返します。5PHPからの実行結果を受け取るPHPは結果をブラウザが解釈できるHTMLなどの形式にして返します。その結果を受け取ります。6ブラウザで表示サーバからリクエスト結果が返ってきますので、結果を表示します。Apache、PHP、MySQLついてみてきました。開発環境構築、サーバ選定にも非常に重要な言葉です。参考になってもらえれば幸いです。PMめちゃめちゃわかりやすい記事で頭にスッと入ってきました。素晴らしい記事をありがとうございます。コメントをキャンセルメールアドレスが公開されることはありません。