2015年12月31日木曜日

WordPressをmacにインストール


WordPressとは?

私もブログを書き始めて後から知ったのですが、言わずと知れた、ブログサイトを立ち上げるためのツールです。
apache,php,mysqlで動作しますので、特別な環境は必要なく、一般的的なレンタルサーバを借りて構築できます。
レンタルサーバによっては、これから記述するような手順はブラウザから、構築ウィザード画面が用意されているものも多くありますので、レンタルサーバの説明をよく読んで選択すると良いでしょう。

レンタルサーバを借りてブログを書き込むような人はアフェリエイトなどが目的の人が多いとは思いますが、WordPressがブログの作成ツールとしてよく選択される理由は、Google等の検索エンジンに検索されやすくなっており、このSEOの適正が高いためよく選択されるようです。

対象者(ターゲット)

今回、WordPressを自前のマシン上に構築しようと考えたきっかけは以下の理由です。
  1. 友人がブログを始めて、無謀豪勢にもいきなりレンタルサーバを借りたらしい、なんとか悪戦苦闘しながらブログを書き始めたそうなのですが、Web開発技術者として、友人として何か支援できればと考えた。
  2. 自分も将来的に、このような一般技術に触れておこうと考えました、特に小規模サーバにはPHPをよく利用されているのは知っていたのですが、実際にほぼ、Java専門で続けているので、ちょっと横道に逸れてみてもいいかなってところです。
ですので、今回のこの記事に対して、役に立つと思われるのは以下の内容かなと想定します。
  • サイト構築に興味があるけど、まだレンタルサーバを借りるほどではい。
  • 操作に習熟するために、ひとまず、本番環境ではない環境でお試しがしたい。
  • 構築方法に興味がある。

対象のスキル
  • unix系のコマンドを一部利用します。コピー、ディレクトの移動、viで簡単な編集ができる程度で良いです。

実際にインストールした環境は以下の環境です。
  • OS X 10.11.2

インストール手順の概要

  1. Apacheのインストール&設定 ー これは、すでにインストールされていたので、本ページでは設定のみを行います。
  2. PHPのインストール&設定 ー これも、インストール済みでしたので、ApacheからPHPを呼び出せるように設定を行います。
  3. MySQLのインストール&データベース構築 ー mysqlのインストールからWordPressが利用するデータベース作成までを説明します。

Apacheのインストール

これは、Macを利用した場合は、既にインストールされているので、割愛します。
簡単に、Macにインストールされていたapcheの環境について調べたことを記載しておきます。

apacheの操作に関してはrootの管理者権限が必要です。
以下の操作は、全てターミナルから実施してください。

apacheのバージョンの確認方法
$ httpd -version
Server version: Apache/2.4.16 (Unix)
Server built:   Jul 31 2015 15:53:26

apacheの起動停止方法  root権限
$ sudo apachectl start | stop | restart

ドキュメントの格納場所
/Library/WebServer/Documents

設定ファイルの場所
/etc/apache2/httpd.conf

MYSQLのインストール

これはさすがに、インストールされてなかったので、自力でインストールしてみたいと思います。
mysqlのインストール自体はこちらを参照してください。

初期データベースの構築

ターミナルから、以下のコマンドを実行します。入力するコマンドはコマンドで表現しております。

mysqlコマンドでデータベースに接続しますが、パスワードを求められます。特に設定を行った記憶のない人は何も入力せず、パスワードなしで利用できるはずです。

$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 146
Server version: 5.6.28 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, 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> 

これから作成するデータベースを操作するためのデータベースのユーザを作成します。
WordPressの初期設定にて自由に設定できますので、ユーザ名パスワードの部分は任意で決めてください。

mysql> create user 'ユーザ名'@'localhost' identified by 'パスワード';

Query OK, 0 rows affected (0.01 sec)

データベースを作成します。
同じくWordPressの初期設定に自由に設定できますので、データベース名の部分は任意で決めてください。

mysql> create database データベース名;
Query OK, 1 row affected (0.01 sec)

作成したユーザにデータベースを利用する為の権限を与えます。

mysql> grant all privileges on データベース名.* to 'ユーザ名'@'localhost';


Query OK, 0 rows affected (0.00 sec)

mysqlのsockファイルをメモしておく

mysql> status
--------------
mysql  Ver 14.14 Distrib 5.6.28, for osx10.8 (x86_64) using  EditLine wrapper

Connection id: 317
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.6.28 MySQL Community Server (GPL)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db     characterset: latin1
Client characterset: utf8
Conn.  characterset: utf8
UNIX socket: /tmp/mysql.sock  ここをメモしておく
Uptime: 3 days 23 min 36 sec

Threads: 1  Questions: 4833  Slow queries: 0  Opens: 81  Flush tables: 1  Open tables: 73  Queries per second avg: 0.018

--------------

PHPのインストール

これも、インストール不要です。調べたところ、PHPのインストールはされているようなので、特にインストールはしませんが、apacheとPHPが連携して動作するように設定を行う必要があります。

sudo vi /etc/apache2/httpd.conf

でviエディタを起動して、以下の行のコメントを取り除くだけです。
#LoadModule php5_module libexec/apache2/libphp5.so
   ↓
LoadModule php5_module libexec/apache2/libphp5.so

phpの設定ファイルを準備とPHPへの接続設定の追加

$ sudo cp /etc/php.ini.default /etc/php.ini
$ sudo vi /etc/php.ini

ファイル内の「mysql.default_socket」にmysqlをインストール時に「status」コマンドで取得した。UNIX socketに指定されたファイル名を入力してください。

mysql.default_socket = /tmp/mysql.sock

apacheの再起動
sudo apachectl restart

動作確認
sudo vi /Library/WebServer/Documents/index.php 

viエディタを起動して、以下の内容のファイルを作成します。
中身は他に入りません。これだけ記述して:wqで保存して終了しましょう。

ブラウザ起動して、以下のURLを入力するとこんな感じのが画面が帰ってくるはずでです。
URL http://localhost/index.php




WordPressのインストールと初期設定

WordPressのインストールですが、まずここからダウンロードします。

ダウンロードしたファイルを解凍します。
$ sudo unzip -d /Library/WebServer/Documents/ wordpress-4.4-ja.zip
$ cd /Library/WebServer/Documents/
$ sudo cp wp-config-sample.php wp-config.php

コピーしたwp-config.phpファイルの以下の内容を書き換えます。

/** WordPress のためのデータベース名 */
define('DB_NAME', 'データベース名');

/** MySQL データベースのユーザー名 */
define('DB_USER', 'ユーザ名');

/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'パスワード');

設定が完了したら、以下のURLにアクセスします。


必要な項目を入力してWordPressをインストールボタンを押します。
成功すると以下の画面が表示されます。


そのままログイン画面を呼び出しても良いのですが、以下のURLからログイン画面を表示できます。

ログイン・パスワードを入力すると、ブログをカスタマイズしたり投稿したりするダッシュボードが表示されます。


以上が、WordPressのインストールまでです。
あなたのこれからブログ構築に少しでもお役に立てれば幸いです。


2015年12月29日火曜日

MySQLのインストール

今回はいきなりですが、MySQLのインストールいついて記録しておきます。

対象環境

OS X 10.11.2 

MySQLの入手

ダウンロード場所

以下のファイルを選択してダウンロードしました。
Mac OS X 10.10 (x86, 64-bit), DMG Archive

で、突如気になったのですがDMGってなに!?(すいません、最近Macユーザになったので)ってことで少し脱線してみて調べてみました。
すぐにわかったのですが、これってディスクイメージ(Windowsで言う、.iso)なんですね。
なるほど、疑問が一つ解決したので、作業を継続します。

インストール開始

と言っても、インストールに関しては、特に戸惑うことはありません。表示される画面に従って、「続ける」ボタンを連打していけばインストールは完了してしまいます。

Finder等で、ダウンロードしたファイルを選択すると、勝手にデスクトップにディスクイメージをマウントしたディレクトリが作成されます。


「mysql-5.6.28-osx10.8-x86_64.pkg」を実行するとインストーラーが起動します。
 「続ける」ボタンクリック
 英語だ!?分かんね、無視して「続ける」ボタンをクリックします。
 いいですか、これを押すとインストールが開始されちゃいますよ。。
「インストール」ボタンをクリック

  インストール中、しばらく待つと以下の画面が表示されて、本当に、クリックするだけでインストールが完了してしまいました。

動作確認をしてみよう

ここからは、ターミナルを起動して操作してください。赤く括った部分が実際に入力する箇所になります。

まずは、mysqlのコマンドを実行できるようにパスを通してください。
以下は、参考です。自分の環境やスタイルに合わせて実施してください。

$ vi ~/.bash_profile

でエディタを開き、以下のような記述を追加してください。

export PATH=$PATH:/usr/local/mysql/bin

データベースを扱うための、コンソールを起動します。(Oracleでいうsqlplusですね ←わかんない人は無視してください。)

$ mysql -u root -p
Enter password: 

パスワードの入力を求められますが、初期値は設定されていませんので、そのままreturnキーを押しちゃってください。そうすると以下の内容が表示されるはずです。

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 314
Server version: 5.6.28 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, 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>

これを持って、動作確認を完了してもいいのですが、興味がある人は、以下にデータベースの作成、テーブル作成、データの挿入、データの参照、データベースの削除までを記述してみたので、よかったらお試しあれ。

データベース作成
mysql> create database testdb;
Query OK, 1 row affected (0.01 sec)

使用するデータベースの切り替え
mysql> use testdb
Database changed

ちょー簡単なテーブルの作成からのデータ登録からのデータ参照まで一気にやっちゃいます。

mysql> create table testtable (text char(10));
Query OK, 0 rows affected (0.04 sec)

mysql> insert into testtable (text) values('aaaaaaaaaa');
Query OK, 1 row affected (0.01 sec)

mysql> select * from testtable;
+------------+
| text       |
+------------+
| aaaaaaaaaa |
+------------+
1 row in set (0.00 sec)

最後に、使ったデータベースはいらないので、消しておきます。
mysql> drop database testdb
    -> ;
Query OK, 1 row affected (0.02 sec)

ついでなんで、本当に消えたか見てみます。
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+

最後に、コンソールから抜けるのは

mysql> exit
Bye

Byeって言われて、終了します。

最後に、起動と停止方法

> sudo /usr/local/mysql-5.6.28-osx10.8-x86_64/support-files/mysql.server [start / stop]

2015年12月20日日曜日

Mac Book Pro買いました

経緯

 もう、20年MS-DOSから始まり、現在、Windowsユーザをやってますが、確か私が高校生の時にMachintoshが発売されました。その頃のPCはとても高価で、簡単には手に入らない代物だったのですが、高校の部活の顧問からMacはすごいという話を聞かされました。

 その頃、ちょうど、Windowsが発売され、CUIからGUIへ時代が変わろうとしていたのですが、私はまだ、MS-DOSしか触ったことがなかったの正直、ピンとこないのととても高価なPCを簡単に買い換えることができなかったので、手に触れることはありませんでした。

 スティーブ・ジョブズが死去し、Microsoft系列のOSしか利用したことがなく興味が出なかったのっですが、ちょうど、プレゼンの機会が増えてきて、プレゼンの腕を磨くために買った、「スティーブ・ジョブズの脅威のプレゼン」からAppleに興味を持って数年、やっと、整備品ですがやっと手に入れました。

なんだろう、このワクワク感

 Apple製品を始めて購入したのは初代iPodNanoですが、これは、パソコンショップに行った際に、別に音楽プレイヤーを買いに来たわけでもないのに、即衝動買いをしました。

 この頃からそうなのですが、Apple製品は箱の状態からインパクトがあり、開封するときに、なんとも言えないワクワク感から始まります。美しい包装の中に、美しい製品を収めている。他の製品にはないこだわりが箱の状態からあるのです。

なんたって、Retinaディスプレイ

 さあ、開封してセットアップを開始したのですが、セットアップはすごく簡単に終わってしまいました。(これもWindowsとは大違いですね)

 デスクトップ画面が起動した瞬間に、Retinaすごい、ディスプレイっていう感じじゃなくて、ガラスケースの額縁に入った絵を見てるみたいに美しいことに感動です。

 また、しばらくmacを利用した後、昔使っていたWindows Vistaの画面を見ると、今まで気になっていなかったドットがすごく気になり文字がカクカクしているのがすごくわかるようになりました。

 おまけに、フォントがすごく美しい!!デフォルトで使ってるのに、一味違います。やっぱり、いいものを見ると見る目が養われるというのは本当ですね。
これは、もうやめれまへんな

ちなみに出荷状態のディスプレイ設定では、文字が大きすぎてRetinaの恩恵が少ないです。
「システム環境設定」
「ディスプレイ」
「ディスプレイ」タブの解像度:変更
スペースを拡大
を選ぶと解像度が変わり、画面に表示される情報量が増えます。(もちろん字が小さくなりますが...)

 あっ、欠点は、背景の白がきつすぎて、コントラストを強くすると目が痛いです。(すごく綺麗なんですけ、目に悪そうだから下げて使ってます)

なに、このパッドの使いやすさは

 最近はどうか知らないけど、ふた昔前のWindowsノートパソコンではパッドにちょっと当たっただけで、クリックされたことになって、文字入力を一生懸命やっている最中に、トラックパッドに当たって、入力カーソルが明後日の方向に飛んでいくってことがよくありました。

 なんだかんだと言っても、マウス操作の時間より文字入力の時間の方が長いので、この不快さはどうしても許せず、ThinkPadを今まで使ってきましたし、どうしてもトラックパッドを利用せざるを得ない場合はタップ機能を無効化していました。

 その点、Macのパッドはちょっと触れたくらいでは反応せず、意識して押した時だけちゃんと反応します。これによりトラックパッドでの不快感は全くなくむしろマウスより使いやすいかもと感じさせる一品です。

 そして、感圧パッドを購入したのですが、こいつもすごい。
 利用者側としては、どっちでもいいのですが、このパッド実は凹んでないのです。機械式ではないのにクリック感がある。しかも強く押し込む感覚もあり、2段階でのクリックを利用できます。

 この機能のおかげで、パッドで操作できることが増えます。実はまだ活用しきれていないのですが、この辺りの話で面白いことがあれば、また報告しますが、故障が減るなどの利点はあるようです。

 利用者の立場に立つとどうでも良いことですが、見えないこだわりに同じ技術者として心を燻られる思いがあります。

 この技術をスマートフォンに活用すると、また、新しいことができるようになるのではないかとワクワクするような技術です。

キーボード

 実は、Macで気に入らないのはこの点ですし、正直キーボードの使用感はThinkPadの方が私は好きです。

 アイソレーションキーボードはブラインドタッチの感覚をかなり狂わせます。具体的にはホームポジションを認識するためのF、Jキーについている凹凸が指で認識しにくい(Windowsでよく利用するキーボードはバー状ですが、iMacは点状で控えめです)、それからキーとキーの隙間が指で認識しにくい(これはキーのくぼみがなく指にフィット感がないためだと思います)ので、キーの位置を認識するためのタイムラグがあり、いつもの入力速度をキープできません。

キーボード入力のスピードを重視しない人は、あまり気にならないかもしれません。

 使い始めると徐々に変わるのですが、冬場に起動した直後に利用するとこのアルミディブが冷たくて、冬場に利用するには少し冷たすぎます。

 ちなみに私は、お気に入りのRealForceキーボードを利用しています。外部キーボードをつけると、前に紹介したトラックパッドが利用できないので、前のPCで利用していたWindowsのマウスとセットで利用している状態です。感圧トラックパッドが利用できないのは少し残念なので、トラックパッドだけ購入したと考えていますが、新しく発売されたMagic Trackpad 2はApple Storeで14,800円でちょっと高いです。

OSを使ってみての最初の感想

 まだ、まだ使い始めて1週間なのですが、正直、使い方が違う点に日々、格闘中ですが、これは、ショートカットなんかをWindowsでは活用できた状態から考えると、Macで同じレベルになるまでの話です。普通にアプリケーションを起動して使う分にはさほど大変ではありません。

 ちなみに、ユーザインターフェースがいろいろと、WIndowsとは逆なんですよ。例えばアプリケーションが表示されるウィンドウを閉じる、最小化、最大化ボタンが左にあったり、ダイアログのOK、キャンセルボタンが逆だったり、スクロールマウスのホイールの回す方向が逆だったり(でも、よくよく考えたら、画面上の紙をつかんで、雨紙を動かす方向にホイールさせると考えるとMacの方が正しい気がします。)