ドットインストールの「ローカル開発環境の構築」を参考に、MacOSX 10.7上にCentOSの仮想環境を構築していく。の続き
- 作業用ユーザーでログインできたら、作業ユーザーの権限を設定するために、一旦ログアウトし、rootユーザーで再度ログイン。
- rootユーザーでログインしたら、wheelグループに作業用ユーザーを追加する。 usermod -G wheel [作業用ユーザー名]
- wheelグループの権限を設定する。 visudo を実行
- エディタが起動するので、 /wheel を入力してエンター(エディタ内でwheelという単語を検索)
- # %wheel ALL=(ALL) ALL という行の先頭にある2文字(#と半角スペース)を削除する。削除するには、削除したい文字にカーソルを合わせてxキーを押す。
- ESCキー -> コロン(:) -> wq! -> エンター と入力して、変更を強制的に上書き保存しエディタを終了する。
- 作業用ユーザの権限設定が終わったので、rootユーザーでログアウト -> 作業用ユーザーでログイン
- webサーバーのインストールを行う。 sudo yum -y install httpd
- mysqlサーバーのインストールを行う。 sudo yum -y install mysql-server
- PHPのインストールを行う。 sudo yum -y install php php-devel php-pear php-mbstring php-gd php-mysql
- PHPのインストールが完了したら、php.iniの設定を行う。php.iniの内容を確認するには、ターミナルで php -i を実行。php -v を実行すると、PHPのバージョンを確認できる。
- php.iniを編集する前に、バックアップをとっておく。 sudo cp /etc/php.ini /etc/php.ini.org
- rootユーザーになる su - 、一般ユーザーに戻る exit (スーパーユーザーの場合コマンドラインに#、一般ユーザーの場合コマンドラインに$が表示される)
- php.iniの編集を始める。 vi /etc/php.ini (レッスン動画ではvim /etc/php.ini としていたが、手元の環境ではvimが無いというエラーが出たのでviにしてみた。vimとviの違いは知らない)
- 編集に入る前にviの使い方がわからなかったので、viの基本操作を物凄く簡単にまとめてみた。id:skipform:20121102#p2
- エラーログの保存場所を変更 error_log = /var/log/php_errors.log (行頭の;を削除してコメントアウトを解除し、/var/log/を追加)
- マルチバイト文字の設定 mbstring.language = Japanese (行頭の;を削除してコメントアウトを解除)
- 文字コードをEUC_JPからUTF-8に変更 mbstring.internal_encoding = UTF-8 (行頭の;を削除してコメントアウトを解除し、EUC_JPからUTF-8に書き換え)
- mbstring.http_input = auto (行頭の;を削除してコメントアウトを解除)
- mbstring.detect_order = auto (行頭の;を削除してコメントアウトを解除)
- expose_php = Off (デフォルトではOnになっているので、Offに書き換え)
- タイムゾーンの設定 date.timezone = Asia/Tokyo (行頭の;を削除してコメントアウトを解除し、Asia/Tokyoを追加)
- 以上でphp.iniの編集が完了なので、:wq と入力し、保存してviを終了する。
- セキュリティの設定を無効にする(selinuxを無効化する) setenforce 0 (これだけだと起動毎に行う必要がある)
- OS起動時にselinuxを無効化するため、viを起動して設定ファイルを編集する vi /etc/sysconfig/selinux
- SELINUX=enforcing という行を SELINUX=disabled に変更して上書き保存しviを終了
- iptablesを無効化 /sbin/service iptables stop
- OS再起動時にiptablesを無効化 chkconfig iptables off (chkconfigはサーバ起動時の設定を行うもの)
- CentOSを再起動 reboot
- 作業用ユーザーでログイン後、スーパーユーザーになっておく。 su -
- httpdを起動 /sbin/service httpd start
- MySQLを起動 /sbin/service mysqld start
- OS起動時にhttpdを起動するように設定 chkconfig httpd on
- OS起動時にMySQLを起動するように設定 chkconfig mysqld on
- Apacheの動作を確認するため、MacOSX側のブラウザで http://[hosterで設定したホスト名] にアクセス。Apache 2 Test Pageが表示されたらOK
- MySQLの動作を確認するため、terminalで mysql -u root を実行(このrootはMySQLが自動的に作成するMySQLのrootアカウント)
- MySQLのプロンプトが表示されたら動作OKなので、exitを入力してMySQLから抜ける
- /var/www/html ディレクトリの所有権を作業用ユーザーに変更 chwon [作業用ユーザー名] /var/www/html
- cyberduckから仮想OSにFTP接続出来るように設定する。SFTPを使用、作業用ユーザーの名前とパスワード
- あとは適当にhtmlファイルやphpファイルを作ってサーバの動作確認。
自分の場合は、cyberduck + テキストエディタではなくて、Dreamweaverを使ってみる。Dreamweaverのサイト管理から仮想サーバにFTPしてアップロードするように設定してOK。ここまでは全て、環境構築なので一回やったら終わり。
普段の運用
- MacOSXを起動
- VirtualBoxを起動
- VirtualBox上でCentOSを起動
- hosterを起動
- Dreamweaverで開発、アップロードなど
普段の運用では、サーバの設定を変更するとかでも無い限り、Terminalを起動する必要はない。