Quantcast
Channel: ダッシュで奪取
Viewing all articles
Browse latest Browse all 37

nginxでHTML表示できるところまで

$
0
0

前回 kyoruni.hatenablog.com

環境

やりたいこと

  • サーバーに配置した .html ファイルをブラウザで見たい

設定ファイルのパスを探す

  • --conf-path=のところにパスが出ている
  • /etc/nginx/nginx.confのようだ
$ sudo nginx -V
nginx version: nginx/1.25.1
built by gcc 12.2.0 (Debian 12.2.0-14) 
built with OpenSSL 3.0.930 May 2023# 省略
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf

設定ファイルの確認

  • /etc/nginx/nginx.conf内で、/etc/nginx/conf.d/*.confを読み込んでいた
  • 初期状態では /etc/nginx/conf.d/default.confに80番ポート( HTTP )の設定が書いてあるようなので、そちらを確認する
/etc/nginx/conf.d/default.conf
  • location の root より、/usr/share/nginx/htmlが html のディレクトリであることが分かる
  • この中に .html ファイルを配置することで、ブラウザからアクセスできるようになる
server {
    listen       80;
    server_name  localhost;

    #access_log  /var/log/nginx/host.access.log  main;    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }
# 以下省略

html ディレクトリの中身を確認

  • index.html がある
$ ls  /usr/share/nginx/html/
50x.html  index.html

index.html の確認

  • デフォルトで作成されていたファイル
/usr/share/nginx/html/index.html
<!DOCTYPE html><html><head><title>Welcome to nginx!</title><style>html{color-scheme: light dark; }body{width: 35em; margin: 0auto;
font-family: Tahoma,Verdana,Arial,sans-serif; }</style></head><body><h1>Welcome to nginx!</h1><p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p><p>For online documentation and support please refer to
<ahref="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<ahref="http://nginx.com/">nginx.com</a>.</p><p><em>Thank you for using nginx.</em></p></body></html>

VPSの IP アドレスを調べる

  • ~/.ssh/configに書いてある or コントロールパネルから確認できるのでそれを見てもよかったけど、面倒なのでこの場で調べる
$ curl ifconfig.io
xxx.xxx.xxx.xxx

index.html をブラウザで表示してみる

  • ブラウザで http://<自分のIPアドレス>にアクセスする
  • 表示された!ヤッター

ページを追加してみる

  • /usr/share/nginx/html内に、以下の内容で test.htmlを作成してから、ブラウザで http://<自分のIPアドレス>/test.htmlにアクセスする
    • ページは表示された!が、タイトルが文字化けしてしまった……。
      • 繝�せ繝�になっていた
      • 文字コードが設定されていないからのようだ
/usr/share/nginx/html/test.html 
<html><head><title>テスト</title></head><body><p>hogehoge</p></body></html>

文字コードを設定する

/etc/nginx/nginx.conf
http {
# 省略    sendfile       on;
    #tcp_nopush    on;
+   charset        utf-8;

設定ファイルの再読み込み

  • 再読み込みしてから、もう一度 http://<自分のIPアドレス>/test.htmlにアクセスする → OK ヤッター
    • ページをリロードしただけだと反映されなくてちょっと焦った
    • キャッシュが効いていたようで、Chromeの「ハード再読み込み」したら反映された

参考

おわりに

  • 大したことしていないんですけど、表示されるとめちゃくちゃうれしいですね

Viewing all articles
Browse latest Browse all 37

Trending Articles