今回は、最短でLAMPインストールし、Wordpressを動かすまでの手順について解説してみたいと思います。
とりあえず、CentOS / ScientificLinux インストールした後から、Wordpressを動かすまでです。
このサイトをじっくり読んでいただければ、全て記載してありますが、
「ちょっと、お試しでWordpressを使ってみたいだけなのに、いちいち全部読むのは大変」という方には、この記事のとおりやれば、とりあえず、できるはず?です。
さくらのVPS や お名前.com VPS(KVM) など 月額1,000円以下の格安のroot権限を持つVPSが提供されています。
そんなVPSを有効利用するにも、それなりの技術が必要となります。
その技術のしきいが高くて手を出せない方のために、この記事が、何かのきっかけになってくれればうれしく思います。
- 目次
- 履歴
2012年8月27日 初版
2013年5月22日 目次追加、古くなった情報を見直し
LAMP(Apache+MySQL+PHP)をインストールする
ここでは、ウェブサーバー(apache), データベース(mysql) ,スクリプト(php) をインストールします。 LAMPのPは、Perlもありますが、依存関係でインストールはされますが、(WordPress自体には、Perlは必要ないので)ここでは明示的にPerlはインストールしません。
phpをインストールする。
|
iusリポジトリのインストール並びに、有効、無効の設定に関する詳細は、リポジトリの追加・削除、無効・有効の設定をしてみる を参照してください。
|
Apache では、phpのモジュール版で動作させますので、cgiやfpmはインストールしません。
mysqlをインストールする。
- mysqlをインストールする
# mysql mysql-server をインストールします。 $ yum -y install mysql mysql-server ... $ mysql --version mysql Ver 14.14 Distrib 5.1.61, for redhat-linux-gnu (i386) using readline 5.1
- mysqlデーモンを起動する
# mysql-server のデーモン(サービス)を起動します。 $ /etc/init.d/mysqld start MySQL データベースを初期化中: WARNING: The host 'www.example.com' could not be looked up with resolveip. This probably means that your libc libraries are not 100 % compatible with this binary MySQL version. The MySQL daemon, mysqld, should work normally with the exception that host name resolving will not work. This means that you should use IP addresses instead of hostnames when specifying MySQL privileges ! Installing MySQL system tables... OK Filling help tables... OK To start mysqld at boot time you have to copy support-files/mysql.server to the right place for your system PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER ! To do so, start the server, then issue the following commands: /usr/bin/mysqladmin -u root password 'new-password' /usr/bin/mysqladmin -u root -h www.example.com password 'new-password' Alternatively you can run: /usr/bin/mysql_secure_installation which will also give you the option of removing the test databases and anonymous user created by default. This is strongly recommended for production servers. See the manual for more instructions. You can start the MySQL daemon with: cd /usr ; /usr/bin/mysqld_safe & You can test the MySQL daemon with mysql-test-run.pl cd /usr/mysql-test ; perl mysql-test-run.pl Please report any problems with the /usr/bin/mysqlbug script! [ OK ] mysqld を起動中: [ OK ] # 正しく起動できらリブート時に自動起動するようにchkconfigで設定しておきます。 $ chkconfig mysqld on
- Wordperssで使用するデータベースを作成する
ここで、最低限 mysql の以下の項目の設定を行います。
- 管理者パスワード設定
- 新規のデータベースを作成
- 新規ユーザの作成
ここでは、SQLをテキストファイルにまとめて、一気に流してしまいます。
以下は、そのSQLファイルのイメージです。
/* rootのパスワードを設定します。 */ set password for root@localhost=password('roothoge'); /* hoge というユーザを新規に作成します。のパスワードも設定します。 */ insert into user set user="hoge", password=password("hogehoge"), host="localhost"; /* wddb というwordpress用にデータベースを作成します。 */ create database wddb; /* wddb というデータベースに hogeというユーザが常にアクセスできるようにします。 */ grant all on wddb.* to hoge; /* 最新に更新 */ FLUSH PRIVILEGES;
続けて、そのSQLファイル ( ここでのファイル名を 例として wordpress.sql とします ) を mysqlコマンドを使って一気に流してみます。
# SQLファイルを実行します。 $ mysql -uroot -Dmysql < wordpress.sql # 管理者でログインできるか確認します。 $ mysql -uroot -proothoge Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.1.61 Source distribution Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> exit Bye # 続けて新規データベースへ新規ユーザでログインできるか確認します。 $ mysql -uhoge -phogehoge -Dwddb Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 10 Server version: 5.1.61 Source distribution Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> exit Bye
このようにログインできればOKです。
Apacheをインストールする。
- Apacheをインストールする
$ yum -y install httpd ...
上記のインストール手順から php のインストール時に依存関係があるので、既にインストール済になっていると思います。
- Apacheの設定を行う
# ここでは、必要最小限のサーバー名だけ設定しておきます。 $ vi /etc/httpd/conf/httpd.conf ... # サーバー名だけ指定しておく。 ServerName www.example.com:80 ...
- Apacheデーモンを起動する
# ウェブサーバー(httpd) を起動します。 $ /etc/init.d/httpd start httpd を起動中: httpd: apr_sockaddr_info_get() failed for www.example.com ... [ OK ] # ウェブサーバー(httpd) の動作確認ようのファイルを作成します。 $ cd /var/www/html [html]$ echo '<?php echo phpinfo(); ?>' > index.php [html]$
上記で作成したindex.php へアクセスしてみてください。(ここでの例では、http://www.example.com/index.php へアクセスすることになります。 )
ここでアクセスするためのドメインについては、DNSの設定を行っておきます。
先のhttpd.confのServerNameで設定したドメインに関してDNSレコードに設定しておく必要があります。
DNSレコードを設定することで、普通に、http://www.exmapl.com/index.php でアクセスできるようにしておきます。
この画面が見えればOK。
見えない場合、 接続に失敗した場合は、ドメインが正しくIPアドレスをさしているか確認します。 接続がタイムアウトとなる場合は、iptables で接続を拒否している可能性があります。 iptables を無効にしてみます。$ /etc/init.d/iptables stop iptables: ファイアウォールルールを消去中: [ OK ] iptables: チェインをポリシー ACCEPT へ設定中filter [ OK ] iptables: モジュールを取り外し中: [ OK ]
この状態でアクセスできるようになれば、間違いありません。
iptables の最低限の設定をしておきます。 以下のイメージを適当なテキストファイルに書き込みます。#!/bin/sh # chain のルールをすべて削除します。 /sbin/iptables -F # ユーザー定義チェインを削除します。 /sbin/iptables -X # chain のデフォルトポリシーを target に設定します。 # 入力は全て破棄(NG) /sbin/iptables -P INPUT DROP # 出力は全て許可(OK) /sbin/iptables -P OUTPUT ACCEPT # 転送は全て破棄(NG) /sbin/iptables -P FORWARD DROP # lo:localhost のこと # loの入力は全て受け入れ(OK) /sbin/iptables -A INPUT -i lo -j ACCEPT # loの出力は全て許可(OK) /sbin/iptables -A OUTPUT -o lo -j ACCEPT # icmp (pingのポート)の入力は受け入れ /sbin/iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT # 22 (sshのポート)の入力は許可 /sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT # 80 (httpのポート)の入力は許可 /sbin/iptables -A INPUT -p tcp --dport 80 -j ACCEPT # 送信時の応答受信を許可します。 /sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # 設定したルールを保存します。 /etc/rc.d/init.d/iptables save # 設定したルールで iptables を再起動します。 /sbin/service iptables restart
作成したテキストファイル(ここでは、local_iptableという名前のファイルとします)を実行します。
$ sh local_iptable iptables: ファイアウォールのルールを /etc/sysconfig/iptable[ OK ]中: iptables: ファイアウォールルールを消去中: [ OK ] iptables: チェインをポリシー ACCEPT へ設定中filter [ OK ] iptables: モジュールを取り外し中: [ OK ] iptables: ファイアウォールルールを適用中: [ OK ]
WordPress をインストールする
最後に WordPress をインストールして動かしてみましょう。
- 最新版のWordpressをダウンロードし、展開します。
最新のWordpressをダウンロードします。
# 最新のWordpressをダウンロードします。 # -- 最新版のファイル名は、必ず、Wordpressのサイトで確認しましょう。 $ wget http://ja.wordpress.org/wordpress-3.5.1-ja.zip ...
続けて、zipファイルを解凍します。
$ mv wordpress-3.5.1-ja.zip /var/www/html/. $ cd /var/www/html/ [html]$ unzip -qq wordpress-3.5.1-ja.zip [html]$ mv wordpress/* . [html]$ rm -fR wordpress
- ウェブブラウザからアクセスします。
ここでは、www.example.com というサーバー名でアクセスできるものとして設定していますので、
http://www.example.com でアクセスします。
初期状態では、Wordpressの設定用ファイル ( wp-config.php ) がないので、作成しますよ・・というメッセージが表示されます。
設定ファイルを作成する をクリックして、次へ進みます。
- 設定ファイルが作成できたら、インストールの初期画面が表示されます。
さあ、始めましょう! をクリックして、次へ進みます。
- データベース情報を設定し、Wordpressで必要なテーブルを作成します。
- データベース名 :
先に作成したデータベース名を入力します。
ここでは、wddb とします。
- ユーザ名 :
先に作成したデータベースのユーザ名を入力します。
ここでは、hoge とします。
- パスワード :
先に作成したデータベースへアクセスできるユーザのパスワードを入力します。 ここでは、hogehoge とします。
- データベースのホスト名 :
ここでは、同じホスト内なのでlocalhostとします。
- テーブル接頭辞 :
同じデータベースに複数のWordpressをインストールする場合は、ユニークな文字列を設定します。
同じデータベースに1つしかWordpressをインストールしない場合は、そのままで可。
※ここで設定するテーブル接頭辞は、このWordpressの識別子のようなものです。
ここでは、wp_ とします。
送信 をクリックして、データベースにWordpressで使用するテーブルを作成します。
ここで、設定ファイル ( wp-config.php )が存在しない場合は、自動的に作成しようとします。そこで作成できなかった場合、以下のような画面が表示されます。
この場合、手動で 設定ファイル ( wp-config.php ) を作成するか、Wordpress のインストール先に書き込み権を与えると先に進むことができます。
Wordpress のインストール先に書き込み権を与える場合、簡単なのは、所有者をapache へ変更してしまうことです。以下は、その例です。
これで、/var/www/htmlの配下全ての所有者および所有グループを apache に変更できます。$ chown -R apache. /var/www/html
データベースへの接続が可能な場合は、上記のように表示されます。
続けて、インストール実行 をクリックして、データベースに基本的なデータを設定します。
- データベース名 :
- WordPressで必要なテーブルの作成が完了したら、次にWordpressの情報を設定します。
- サイトのタイトル :
WordPressで管理するサイト名を入力します。
(ここでは、あくまで例として「ワードプレスをインストールしてみた」としました。)
- ユーザ名 :
WordPressの管理ユーザ名 (デフォルト : admin )
(セキュリティ上、admin以外を使うことをおすすめしますが、ここでは、簡単を重視するため、デフォルトのadminを使います。)
- パスワード :
WordPressの管理ユーザのパスワード
(セキュリティ上、強い パスワード(英数字をからめた8文字以上)のパスワードを設定しましょう。)
- メールアドレス :
WordPressの管理ユーザのメールアドレス
(このアドレスは、パスワードを忘れてしまった時などにも用いられますから、良く使うメールアドレスで必ず着信できるメールアドレスにしましょう。)
- このサイトがGoogleやTechnoratiなどの検索エンジンに表示されるのを許可する。 :
WordPressで記事を投稿したときに検索エンジンに通知するか否かを指定します。
(通常は、チェックします。テスト(試す)のみなら、ここのチェックは不要です。)
WordPressをインストール をクリックして、Wordpressをインストールします。
- サイトのタイトル :
- WordPressが正常にインストールできたら、以下の画面が表示されます。
これでインストールは完了したので、ログイン ボタンをクリックすると、下記のログイン画面が表示されます。
簡単な動作確認のために、ログインしてみるのも良いですし、
画面下のリンクが、ウェブサイトへのリンクとなっていますので、そこをクリックし、サイト表示させて動作を確認するのも良いと思います。
ここでは、後者を使って動作を確認してみます。以下のようにウェブサイトのトップページが表示されればOKです。
ここに書いているのは、あくまで必要最小限としての記載ですので、ユーザによっては、もっと、細かい設定を行いたいと思うかもしれません。その際は、このサイトでも個々の詳細な設定記事がありますので、そちらを参照してください。
さくらのVPS や お名前.com VPS(KVM) など 月額1,000円以下の格安のroot権限を持つVPSが提供されています。
そんなVPSを有効利用するにも、それなりの技術が必要となります。その技術のしきいが高くて手を出せない方のために、今回、必要最小限の設定でWordpressまでを動かすまでを記事にしてみました。
まだまだ、必要な技術的な知識は必要になってくると思いますが、初心者の方々の何かのきっかけになればうれしく思います。
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない、検索ができないことがあります。
- CentOS,ScientificLinuxでLAMP(Lighttpd+MySQL+PHP)インストールからWordPressを動かすまで(Lighttpd編)
- CentOS,ScientificLinuxでLAMP(Nginx+MySQL+PHP)インストールからWordPressを動かすまで(Nginx編)
- CentOS 7 でLAMP(Apache+MariaDB(MySQL)+PHP)インストールからWordPressを動かすまで(Apache編)
- 評判のCloudCore VPSを使うときに最初にやっておきたいこと(CentOS編)
- CentOS,ScientificLinuxで(L)AMP(Apache,MySQL,PHP)インストールからEC-CUBEを動かすまで
コメントを投稿 :