GTB、LAMP開発基礎の自習内容


目的

  • PHPの勉強を自分で進められるようにする
  • 自分のサーバーを構築してPHPを使い公開できるようにする

流れ

  • ConoHaにアクセスして自分のサーバーを準備する
    • サーバーの構築と起動
  • ローカル環境のWindows、Macに開発環境とサーバーへアクセスできる準備をする
    • エディターの準備
    • SFTPの準備
    • SSH接続の準備
    • DocumentRootはどこ?
  • PHPを書いてみよう
    • Hello,World!
    • 自習サイト

開発手法としてはローカルでPHPを書いてサーバーにアップロードして実行するというレガシーな方法を使用します。
またデフォルトのrootユーザーを利用することになります。
長期間に渡って立ち上げる必要がある場合は、本講座を受講したのちにセキュリティを向上させるための設定を実施してください。
以下のドキュメントがわかりやすくまとまっています。
ConohaにVPSを設置して、SSHログイン、ポート番号変更、rootログイン禁止までを30分で!

ConoHaにアクセスして自分のサーバーを準備する

ConoHaのログイン画面から事前に準備していたログインアカウントでログインをしてください。
ログイン ConoHa

ログイン

サーバーを追加

ConoHaのサーバーが起動完了したことを確認

IPアドレスの確認

ブラウザーからサーバーにアクセスして正常にアクセスできるか確認をする

以下のようなメッセージが表示されていれば正常です。
特にLAMPというキーワードが含まれているかを確認してください。

This is the default welcome page of ConoHa LAMP image.

ここに自分で書いたPHPのプログラムが表示されるようにしていきたいと思います。

ローカル環境のWindows、Macに開発環境とサーバーへアクセスできる準備をする

エディターを準備

本講義では大規模な開発を行うことはなく軽快なテキスト編集が可能な環境で進めたいと思います。
OS標準のエディターだと不都合が多いので何かしらのエディターの準備をしてください。
Vimが使える方はそちらでもいいです。

Windows

Mac

ごめん、あまり知らない。
- Sublime Text
- ATOM

SFTPの準備

IPアドレス、ユーザー名、パスワードをもとにsftpによる接続を行います。
sftpはファイルをサーバーに送信(アップロード)したり受信(ダウンロード)したりするための通信規約(プロトコル)になります。
WindowsのエクスプローラーやMacのFinderのように直感的に操作できるツールが存在しています。

ちなみsftpじゃなくてftpという通信規約もありますが非常に危険なので使わないようにしましょう。

  • 不明なホスト鍵 ほぼ間違いなくご自身のサーバーなのでチェックを入れてOK。

  • 以下のようにサーバーのディレクトリー構造とファイルの一覧が確認できれば無事に接続完了です。

ファイルをリモートサイト側のエリアにドラッグするとファイルがアップロードされます。

しかしこのままではどこにファイルをアップロードしたらいいのわかりません。
正解は/var/www/html/になるのですが設定されている元ファイルをみてみて理解を深めてみたいと思います。

その見るための準備を次に行います。

SSH接続の準備

地味な画面に向かって黙々と作業をすることになりますがこれを使えるようになっていると仕事がちゃんとできるようになります。

Mac

Macでターミナルを起動する方法

以下の内容を打ち込んでみるといろいろ出てきます。
133.xxx...はサーバーのIPアドレスを入れます。

結果は以下のようになります。

$ ssh [email protected]
[email protected]'s password:

================================================
Welcome LAMP application!

DocumentRoot: /var/www/html
URL:          http://133.xxx.xx.xxx/
phpinfo:      http://133.xxx.xx.xxx/phpinfo.php
MySQL root password: xxxxxx

Enjoy!

To delete this message: rm -f /etc/motd
================================================
[root@133-xxx-xx-xxx ~]#

Windows

これらの説明の通りにすすめるとMac同様いろんなテキストが表示されるかと思います。
とりあえずこれでつながりました。

DocumentRootはどこ?

httpを通して公開されているサーバー内のディレクトリーをDocumentRootと呼びます。
そのDocumentRootは設定でいろんな場所に変更ができるのですが基本的に定義されているファイルは、
httpd.confというファイルになります。
まずはこのファイルを探してみましょう。

# find / -name httpd.conf

みつかったらこのファイルの中身を見てみましょう。

# cat ここにhttpd.confのファイル名を含めたフルパスを記述する

他に必要なLinuxのコマンドで特に基礎的なものも試してみましょう。

Linux チートシート基礎編
Linux初心者の基礎知識

次はいよいよPHPを書いてみましょう。

PHPを書いてみよう

Hello,World!

超単純なプログラム。テキストを出力します。
以下の内容をテキストエディタに書いてhello.phpという名前で保存しましょう。
そしてサーバーのDocumentRootにアップロードしましょう。

hello.php
<?php
echo "Hello, World!";

ブラウザから対象のファイルにアクセスして出力されているか確認しましょう。

ここまでできて自習ができる準備が整いました!

自習サイト

以下のサイトが非常によくまとまっています。
動画なのですがじっくり時間をかけて実施してもらえればと思います。

PHP入門 (全30回) - プログラミングならドットインストール

この実習の#04 変数とデータ型について理解しようから読み進めてください。

#04 変数とデータ型について理解しよう | PHP入門 - プログラミングならドットインストール

この実習を通して以下の内容を理解できるようにしておいてください。

- 変数
- 代入
- 演算子(四則演算)
- 条件分岐(if, else)
- 配列
- ループ(while, for)
- 関数

PHPに飽きてきたらデータベース、今回はMySQLに触れてみましょう。

GTB、LAMP開発基礎の自習内容 MySQL編