☆☆ 新着記事 ☆☆

2018年11月28日水曜日

ねこでもわかる 「さくら VPS」 を試してみる 第三回  -Apacheインストール

サーバー・レンタルの大手 さくらのVPSが、ネコでもわかる!らしいので、初心者だけど試してみる。の第三回目。 今回は、Apacheのインストール。

参考にするのは、さくら公式の導入ガイド「ネコでもわかる!さくらのVPS講座」
ネコに分かって、人間様に分からない筈はないので、早速、やってみる。 の三回目。

前回はOSをインストールして、今回はいよいよApache。 基本的にOSが最初からインストールされているパソコンか、同じくサーバー・レンタル会社に管理を100%丸投げしている共用サーバーしか利用した事のない自分にとっては既に感慨深いものがある。 

が、さっそくやってみる。


目次
  1. httpサーバーApacheをインストールする
  2. SFTPを使ってファイルをアップロードする
  3. ドキュメントルートの権限を変更する
  4. ドメインを取得して、DNSの設定をする

1. httpサーバーApacheをインストールする

(1) Apacheのインストール

ガイドでは、最近、流行している「nginx(エンジンエックス)」があるよ、と書いているが、インストール手順を書いてくれてないので、昔からのApache(アパッチ)を、素直にインストールする。


サーバーに一般ユーザー(vpsuser)でログインしてrootにスイッチ

# yum install httpd

を実行。

と、と、と、サーバーにログ・イン出来ない。

そーかー、前回の終わりにも書いたけど、最後にサーバーをシャット・ダウンしてるから、再起動かけないと、、、 (マニュアルに従ってやるんだから、シャット・ダウンさせた後、次の回を始めるときには「再起動が必要」と書いといて欲しいな、、、素人なんだからwww。)


そして、VPSコントロールパネルからお申し込みされた場合、パスワードはお申し込み時に
【お客様が設定されたパスワード】
に、なってる訳ですね。

パスワード管理は、非常に難しい。

さて、いずれにしても、コントロールパネルにログインして、サーバー再起動をかけた。

そして再び、SSH(Tera Term)でサーバー・ログインを試みる。

ログインできた!!

そして、ルートユーザに切り替えるコマンドは、

# su -  (suの後、半角スペースとハイフン)


Passwordを求められたので、入力して、ルート・ユーザに切り替え完了。

そして、上のコマンド実行。
Complete!

(2) Apache(httpd)のFW変更。

httpdを起動

♯ systemctl start httpd

ふむ、リターンを押しても、次の#のラインに移るだけですね。

♯ firewall-cmd --add-service=http --zone=public --permanent
# firewall-cmd --add-service=https --zone=public --permanent

を、1行ずつ実行する。

各ラインごとに 'success'が表示されて、穴あけ完了。

ファイアウォールサービスを再起動
# systemctl restart firewalld

なにも表示されないけど。。。

IP addressでブラウザからアクセスしてみる。

http:// IPアドレス 

で、表示できた。 こんな事でも嬉しいのでsnap shot.



(3) httpdがサーバー再起動時に自動で再起動するよう設定変更。

# systemctl enable httpd

Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.

というメッセージがでるけど、

$ systemctl list-unit-files | grep httpd

で、設定の再確認。

httpd.service   enabled

が、表示されればOKです。


****以下は、マニュアルに書いてあったので、
   参考程度にしてください。 上記のコマンドの方がベターです。****

♯ systemctl list-unit-files -t service

で、設定の再確認。

httpd.service   enabled

が、確認できたのでOK

あれ、コマンド・ラインに戻れない!

:q

を、押下してみたら、戻れた。 q まで必要かは微妙。
(おー、マニュアルに q で良いと書いてあった、)
****参考終了****

さて、マニュアルからちょっと逸脱。

今は、CentOSとApacheを入れただけだけど、どれくらい、Diskを使っているの?

興味が湧いたので、前回から勉強中のlinuxコマンドをうってみると、以下の感じ。

[root@] # df -h
Filesystem      Size     Used    Avail Use% Mounted on
/dev/vda4        16G    2.0G      14G  13%        /
devtmpfs        233M     0       233M   0%    /dev
tmpfs            244M     0       244M   0%    /dev/shm
tmpfs            244M  4.5M   240M   2%    /run
tmpfs            244M     0  2    44M   0%    /sys/fs/cgroup
/dev/vda2       497M  222M  276M  45%  /boot
tmpfs              49M     0        49M   0%   /run/user/1000

2G くらいですね。 お申込みは、最低限のSSD 20Gなので、既に10%使っちゃったことになる。
あれ、実質は、上のリストからすると、17.5GBくらいか、、、なるほどね。


2. SFTPを使ってファイルをアップロードする

SFTPを使いましょう、という推奨を心にとめることにして、html ファイルをアップロードしてみる。

と思って、FTPで接続しようとしたができない。

 どうも「 vsftpdをインストール 」して、設定変更をする必要があるようだ。
(参考: さくらVPS FTP接続)等。

 どうも、SFTP(SSH File Transfer Protocol)というのは、暗号化通信を前提としていて、平文通信のFTPとは違うようだ。

そこまでFTPに拘りもないので、おすすめのうちの一つ、WinSCP をインストールしてみる。
(ソフトの選択に根拠はありません。比較検討もしません。時間がもったいないので。)

「窓の杜」さんから、ダウンロード。(v5.13.5(18/11/21))
(圧縮してても 、ファイルサイズが9Mもあるんですね。)

WinSCPのホスト名に接続先IPアドレスをいれて、あとはSSH接続のユーザ名とパスワード。

無事、ログインできました。
悩んだ時間がもったいなかった。結局、SFTPというのは、名前の通りSSHで接続するんですね。

3. ドキュメントルートの権限を変更する

さて、いよいよhtmlをアップロードすることになるのだが、アップロード先は、

http://xxx.xxx.xxx.xxx にアクセスされたときに対応するディレクトリは、サーバーのドキュメントのトップの位置に相当するので、ドキュメントルートと言います。 これは、デフォルトでは
/var/www/html
になります。」

ということになるらしい。

このDirectoryに、書き込みが出来るように権限変更。

sshでVPSに接続し、rootユーザーで以下のコマンドを実行。

# cd /var/www

あれ? コマンド・ラインのプロンプトの前の表示
[root@ik1-xxx-xxxx /] は、ディレクトリを変えても、変わらないのか?

であれば、覚えたてのLinux Commandで、カレント・ディレクトリを調べてみる。
[root@ik1-xxx-xxxx /]# pwd    <-pwdがカレント・ディレクトリを表示するコマンド。/                  <-何故か、ルート・ディレクトリ(?)にいることが判明。

再度、 # cd /var/www を実行すると、


[root@ik1-339-29895 www]#

あっ、やっぱりDirectoryが表示されるんですね。


以下のコマンドで、ファイルの一覧表示。
 
# ls -l
total 0
drwxr-xr-x 2 root root 6 Jun 27 22:49 cgi-bin

drwxr-xr-x 2 root root 6 Jun 27 22:49 html

があった。 読み方は、こういう事らしい。

drwxr-xr-x 2 root root 6 Jun 27 22:49 html

rwx:所有者の権限
r-x:グループの権限
r-x:他人の権限
2は解説がなく、
root : 最初のrootは、所有者名
root : 2番目のrootは、所有者グループ名最後の html が、対象のDirectory名

このDirectoryに、書き込みの権限を与えるように変更するらしい。

もう一つ、このhtml Dicrectoryに書き込み権限を与えるべきユーザにApacheというユーザを
登録しておく方が便利らしい。

WordPressなどのコンテンツ管理システム(CMS)経由でをサイト上で動かす場合は、
Apacheのユーザーである”apache”でファイルを書き込むことになります

これらを考慮し、

drwxrwxr-x 2 apache vpsuser 6 Jun 27 22:49 html

に変える。(即ち、所有者をapache, 所有者グループをvpsuserにする、という事ですね。)

*通常WEBに公開するファイルのパーミッションはhtmlファイルやcssファイルなどは644、ディレクトリは755にしてれば、phpで動的なページを作っても大丈夫だと言われていますが。

やってみる。

・ファイルやディレクトリの所有者を変更するコマンドを実行
# chown apache:vpsuser html

ls - l で、ふむ、所有者、所有者グループが変わったことを確認。
drwxr-xr-x 2 apache vpsuser 6 Jun 27 22:49 html

・権限を変更するコマンドを実行
# chmod 775 html

ls - l で、ふむ、権限が変わったことを確認。
drwxrwxr-x 2 apache vpsuser 6 Jun 27 22:49 html

*この’775’の意味は、rwxrwxr-x を3つのブロックに分け、r=4、w=2、x=1と数値化して計算した合計の値
r w x = 4 + 2 + 1 = 7
r - x  = 4 +  0 + 1 = 5

これで、htmlフォルダに書き込みが出来るようになったわけだ。
SFTPでファイルを
/var/www/htmlにアップロードして、
http:// [ipアドレス]/file名 にアクセスすると、


無事、日本語も表示できました。

/var/wwwにファイルをアップすると、

http://[ipアドレス または ドメイン名]/ファイル名

で、htmlが直接、表示できるんですね。 ドキュメント・ルートと言われる理由だという事が理解できました。

*ところで、https: にすると、この段階では表示できないんですね。 Firewallに通しただけだから。


4. ドメインを取得して、DNSの設定をする

ドメイン・ネーム設定の解説は、ねこでもわかる、の解説の対象外らしい。

ネームサーバ利用申請方法 – さくらのサポート情報
https://help.sakura.ad.jp/hc/ja/articles/206207381

を、読んで設定してください、とのこと。

一通りサーバー環境の構築が終わったらやってみることにして、第三回は、これでおしまい。

だんだん、それらしくなってきました。

 追記)

2週間の無料試験期間中は、さくらのDNSサーバーは利用できないみたいです。
無料のドメインネーム取得サービス会社、 FeenomのDNSサーバーを利用することにしました。

0 件のコメント:

コメントを投稿