参考にするのは、さくら公式の導入ガイド「ネコでもわかる!さくらのVPS講座」
ネコに分かって、人間様に分からない筈はないので、早速、やってみる。 の三回目。
前回はOSをインストールして、今回はいよいよApache。 基本的にOSが最初からインストールされているパソコンか、同じくサーバー・レンタル会社に管理を100%丸投げしている共用サーバーしか利用した事のない自分にとっては既に感慨深いものがある。
が、さっそくやってみる。
目次
- httpサーバーApacheをインストールする
- SFTPを使ってファイルをアップロードする
- ドキュメントルートの権限を変更する
- ドメインを取得して、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 件のコメント:
コメントを投稿