fuelインストール ディレクトリ変更

fuelインストール
$ curl get.fuelphp.com/oil | sh
oilコマンドを使えるようにする

ドキュメントルートに設定したいところにcdで移動
$ oil create 好きなプロジェクト名
↑これで、今いるディレクトリに
好きなプロジェクトのフォルダが出来て、
そのなかにfuelのファイルが入る


ドキュメントルートをfuelのディレクトリに変更

DocumentRoot "/home/vagrant/devando/public"

 

fuelのページが表示されます

ドキュメントルートの変更

etc/httpd/conf/httpd.conf

上記のファイルから、ドキュメントルートの変更を行います。

初期設定は/var/www/htmlになっているかと思います。

 

全てのディレクトリにアクセス制限をかける
<Directory /> AllowOverride none Require all denied </Directory>

/var/wwwは制限をはずす
<Directory "/var/www">
    AllowOverride None
    # Allow open access:
    Require all granted
</Directory>

こんな感じになっているため、

最初は、var/wwwの下にindex.html等のファイルを作成すれば

表示できるが、ドキュメントルートを変更すると表示ができない状態になっていると思います。

 

なので、<Directory "/var/www">これを

<Directory "/home/vagrant">のように、

ドキュメントルートに設定したフォルダの箇所に変更してあげることで、

アクセス制限もうつすことができます。たぶん。

 

あとは、SELINAXが邪魔してる場合があるので、設定を切ります。

setenforce 0

 

これでもダメな場合、設定したディレクトリのパーミッション

おかしい可能性があるので、

chmod 755 /home/フォルダ名

こんな感じでパーミッションを変更してあげてください。

 

あとはアパッチを再起動して接続すると、新しいドキュメントルートになっているはずです。

 

ダメな場合、selinaxが再開してる可能性があるので、

もう一回setenforce 0これやってみると繋がるかと思います。

 

MYSQLのインストールから接続まで

まず、mysqlと競合しないように、もとから入っているmariaDBを削除します。

yum remove mariadb-libs

 

削除しきれないことがあるので、フォルダを直接削除

rm -rf /var/lib/mysql

 

mysqlyumリポジトリに入っていないらしいので、

mysqlの公式リポジトリを先にインストールします。

rpm -ivh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

https以降については、mysqlのサイトから確認して変更します。

 

リポジトリに追加されたので、

mysqlインストールを行います。

yum install mysql-community-server

 

mysqlを起動します。

systemctl start mysqld.service

 

ログインするために、初期パスワードを確認します

cat /var/log/mysqld.log | grep password

 

ログインします。

mysql -u root -p

 

何かしようとする前にパスワードの再設定を促されるので、

先にパスワードを変更します。

ALTER USER root@localhost IDENTIFIED BY '好きなパスワード';

 

このままでは、権限設定の関係?で、

ツールを使ってsshトンネルで接続できないので、

とりあえず全権限を与えたユーザーを作成します。

GRANT ALL ON *.* TO 好きなユーザー名@'%' IDENTIFIED BY '好きなパスワード' WITH GRANT OPTION;

 

これで、SQLのツールからログインできるようになります。

接続方法は下記のように行います。

MYSQLホスト
127.0.0.1
ユーザー名
全権限を与えたユーザー名
パスワード
全権限を与えたユーザーのパス
DB
指定なし ポート 3306 SSHホスト(sshログインするときのパス) 192.168.56.10(sshログインするときのip) SSHユーザー sshログインするときのユーザー SSHPASS sshログインするときのパスワード SSHポート22

 

 

 

 

PHPインストール

phpのインストールは簡単でした。

 

まず、macのターミナルで、sshログインを行います。

 

php -vでphpが入っていないことを確認します。

コマンドが見つかりませんと表示されれば、入っていない状態なのでおkです。

 

 

次に、現在のdocumentrootに設定されている/var/www/html下に、phpのファイルを作成します。

 

今回はinfo.phpを作成します。

前回インストールしたcyberduckから入れてもいいですし、

viコマンドで作成しても大丈夫です。

 

viコマンドの場合、下記の方法でファイルの作成ができました。

 

cd コマンドで、/var/www/htmlに移動

llでファイル確認。

 

前回作成したindex.htmlがあると思います。

そこで、vi info.phpコマンドを打つと、ファイル編集画面が開きます。

aを押して、insertモードにしたあとに下記を入力します。

 

<?php phpinfo() ?>

 

etcコマンドで、insertモードを終了して、:wqと押すと、保存して終了ができ、

viで開いたファイルが現状ない場合新しく作成されるようです。

 

再度、llコマンドで、、ファイルを確認すると、info.phpのファイルが増えていることが、確認できると思います。

 

そこで、http://192.168.56.10/info.php

にアクセスすると、

<?php phpinfo() ?>

先ほど書いたものが、文字列として表示されているはずです。

 

 

ここまで、確認できたら、phpのインストールを開始します。

 

まず、yumインストールで、インストールされる、

phpのバージョンを確認します。

# yum info php

今回は5.4がインストールされるみたいですね。

変える方法もありそうですが、とりあえず今回はそのままインストールしていきます。

 

 

yumからphpのインストール

# yum install php

 

phpのバージョンを確認

# php -v

[root@localhost html]# php -v

PHP 5.4.16 (cli) (built: Mar  7 2018 13:34:47) 

Copyright (c) 1997-2013 The PHP Group

Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies

下記の様に表示されたらおkです。

php5.4がインストールされました。

 

このままだとapacheに反映されていないっぽいので、

アパッチの再起動を行います。

#systemctl restart httpd

 

再度、http://192.168.56.10/info.phpここにアクセスすると、

phpinfo()を、インストールしたphpが読み込んでくれるので、

phpの情報が表示される画面に切り替わっているかと思います。

 

これで、phpのインストールは完了です。

 

これで、とりあえずはローカル環境で作業できるのかな・・?

 

MYSQLはまた時間をおいてでもいいかなと思いますが、

ちょっと考えて見ます。

 

 

 

 

 

 

環境構築その③apacheのインストール+接続確認までを行う

 まず、自分はコマンドに不慣れでファイル編集等はエディタ等で行いたかったため、

CyberduckというFTPソフトをインストールしました。

http://cyberduck.io/index.ja.html

これは基本使いませんが、黒い画面に慣れていない人は、黒い画面からディレクトリ構成を理解するのが大変だと思うので、確認しながら進めていくと便利です。

というか自分は安心です。。

 

 

 

ログイン方法は、Macのターミナルにログインしたときと同じで、

接続方法をSFTPに変更しただけで、ログインすることが出来ました。

 

▼まず、yumを使用して、httpd(apache)をインストールしていきます。

yumでインストールされるものの確認

# yum info httpd

確認したバージョン等が問題なければ、下記でインストール

# yum -y install httpd

 ちゃんとインストールされているかの確認

# httpd -v

 

これでインストール完了です。

 

 

▼次に接続できるかどうかの確認を行います。

# systemctl start httpd.service

apacheの起動

# systemctl status httpd.service

apacheの状態確認。

runningになっていればおkです。

 

あとはhttp://サーバーのIPにアクセスして、apacheのデフォルト画面が

表示されればおkです。

 

例のごとく自分はアクセスができませんでした。。

 

そもそもサーバーのIPがよくわからないので、

# ip add show

で確認したやつを2種類入れてみましたが、うまくいきませんでした。。

 

▼とりあえずhttpdの状況を確認。

httpdの場所を探す

#ps alxw | grep httpd

/usr/sbin/httpdにあるようなので、下記で確認。

#/usr/sbin/httpd -S -DSSL

これでエラーログを吐き出す場所等色々情報がわかりました。

 

ただ一緒に

AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message

 こんなエラーが表示されていたので、

etc/httpd/conf下のhttpd.confを開いて、ServerName部分のコメントアウトを外してみると、エラーが消えました。

結局あとでhttpd.confを元の状態に戻して、エラーが出る状態にしても、

アパッチのデフォルト画面は表示されたので、ファイヤーウォールが邪魔をしてたんだと思います。

 

これで再度接続を試すも繋がらない。

 

 

前回にもあったファイヤーウォールが問題なのかと思い、再度ファイヤーウォールを切ってみました。

ファイヤーウォール切る

#systemctl stop firewalld.service

 

再度アクセスすると、なんとか接続出来ました!

 

NATのIPアドレスでは繋がらず、結局諸々ログインとかで使っている

ホストオンリーネットワークIPをいれて、のhttp://192.168.56.10これでアパッチのデフォルト画面が表示されるようになりました。

 

 

次はMySQLのインストールですね

 

 

 

環境構築その②CentOSのインストール+ターミナルからのsshログイン

前回行ったこと

  • 仮想PCの作成
  • ネットワークの設定

今回行うこと

  • CentOSのインストール
  • MACのターミナルでアクセスできる様にする(sshログイン)

CentOSインストール

さっそく前回ダウンロードした、CentOS Minimal isoを使用して、

インストールを行なっていきます。

 

インストール時の流れ

  • virtualboxで前回作成した仮想マシンをダブルクリックで立ち上げる。
  • インストールするOSを選択する画面が開くので、ダウンロードしてきた

    CentOSのisoファイルを選択(イメージとしてはPCにCDを入れるような感じらしい)

  • CentOSのインストール画面に切り替わるので、InstallCentOSを選択。
  • 日本語を選択
  • インストール先にビックリマークが出ているので、クリック。何もせずに完了でおk
  • インストールの開始。
  • インストール中にrootのパスワード設定と、ユーザーの作成を行う。

 

これで、インストールは作業は完了。

終わり次第再起動がかかります。

 

Macのターミナルからログイン出来るようにする

仮想PCのネットワーク設定

  • 再起動後、root権限でログイン。
  • NetworkManageを開きます。

    CentOS7ではネットワーク設定は、NetworkManageで行うことが

    推奨されているらしいので、この方法で行いました。

    NetworkManagerを使用するためのコマンド

    # nmtui

  • 青い画面が開くので、Edit Connectionを選択。
  • enp0s3(NAT側)を選択。

  • IPv6は使用しないようなので、ignoreに変更*1

  • Automatically connect(OS起動時にNICを有効化させる)にチェック

  • enp0s8(ホストオンリーネットワーク側)を選択。

  •  

    IPV4CONFIGURATIONをMANUALにする。※IPを固定にするため。

  • ADDRESSにホストオンリーネットワークのIPアドレス(192.168.56.1以外)

      を入力。自分は192.168.56.10/24としました。IPアドレスについてはよくわからないので、今度調べてみようと思います。。

  •  

    Ipv6は使用しないようなので、ignoreに変更

  • Automatically connect(OS起動時にNICを有効化させる)にチェック

  • ネットワークの再起動をして、設定を反映させます。

    # systemctl restart NetworkManager

 

これでネットワークの設定完了です。

Macのターミナルからssh root@192.168.56.10これでログインできるはずです。

 

メモ

 が、、自分は上記でログインできず。。

 

追加で下記の対応をしたところ、接続ができるようになりました。 

 

調べるとどうやらファイヤーウォールが怪しそうなので、設定を確認。 

ファイヤーウォール状態確認

#systemctl status firewalld.service

runningになっていたため、一旦接続を切ってみる。

 

ファイヤーウォール切る

#systemctl stop firewalld.service

 

まだ繋がらない。。。

接続できるようになったあと、再度仮想マシンを起動し直して、

firewallが起動中の状態で、sshでログインしてみると、

普通にログイン出来たので、原因は、下記のNetworkManagerだったのかもしれません。

 今後作り直すときに、再度確認してみようと思います。 

 

最初に設定したNetworkManagerを再度確認してみる。

NetworkManagerを使用するためのコマンド

# nmtui

 

なぜか、enp0s8(ホストオンリーのほう)が2つできてしまっていたので、

一つ削除を行いました。

 

再度ターミナルで、sshログインを行うと無事ログインすることができました。

#ssh root@192.168.56.10

パスワードはインストール中に入れたパスワードでログインできます。

 

#ip add showとすることで、設定したネットワークが自分の目で見れます。

 

 

*1:IPv6とは、IPv4アドレスが枯渇した際のための次世代規格らしく、現状ではWindows等のPC含めて向こうにしておいて問題ないものらしいです。

環境構築その①仮想マシンの作成

用意したもの

Macを使ってるので、OS X hostsからダウンロードしました。
VirtualBoxは、自分のPCの中に仮想のPCを作成し、別のOSをインストールすることができるフリーのPC仮想化ソフトらしいです。
MacWindowsを入れたりもできるみたいですよ
Minimal ISOをダウンロードしました。
  • DVDiso
    • 一般的な用途で使用される。
  • Everything ISO
    • CentOSで提供されるパッケージが全て入っている。
  • Minimal ISO
    • 最低限のパッケージが含まれる。
環境構築時はとりあえずMinimal ISO選んでおけば良さそうでした。

仮想マシンの作成

仮想マシンのスペック

    • 名前        : CentOS7
    • タイプ       : linax
    • バージョン     : Red Hat 64bit
    • メモリサイズ    : 1024MB
    • 仮想ハードドライブを作成
    • HDDファイルタイプ   : VDI
特別な理由がなければVirtualBoxの独自のディスクイメージのVDIを選択が良いっぽい
  • ストレージ        : 可変サイズ
  • HDDサイズ       : 8GB
仮想のPCはいくらでも作り直せるので、今回はこのスペックの仮想PCをvirtualboxに作成しました。 完成後はすぐに起動せず、ネットワーク設定を行います。

ネットワーク設定

接続の種類

NAT接続

  • 外との通信は可能
  • ホストOSとの通信が不可(ssh接続ができずターミナルなどで作業ができないらしい)
  • ゲストOS(CentOS)からホストOS(Mac)には通信可能(pingコマンドが通るらしい)
よくわからないが、MacCentOSをつなげるだけのネットワークっぽい

ホストオンリーネットワーク

  • ホスト OS (Mac)と ゲスト OS (CentOS)間のネットワーク。
こいつをいれておくと、ssh接続でMacのターミナルから作業ができるっぽい
自分はMacのターミナルで作業したかったので、今回こっちも設定しました。

ネットワーク設定方法

ホストオンリーネットワーク接続方法

 

1.ホストオンリーアダプターの追加

VirtualBoxのグローバルツールから、ホストネットワークマネージャーを開いて新規作成を押す。
vboxnet0という名前のアダプター?が作成されるのでそれでおkっぽい。
 

2.ホストオンリーネットワークをアダプター2に設定

設定→ネットワーク→アダプター2
割り当て:ホストオンリーネットワーク
名前:vboxnet0