昨日、echoモジュールに付いて記事を書いたら
直接 return
できるよって教えてもらった。
nginx設定 で 直接HTMLを書き出す。echo モジュール。 - それマグで!b.hatena.ne.jp直接 return 200 "<!DOCTYPE html><h1>It works.(nginx)</h1></html>"; するのはどうでしょう..?
2022/08/16 16:19
昨日、nginxから直接コンテンツを書き出す方法を調べてechoモジュールを利用する記事を書いたら、コメントでもっとシンプルでモジュールがいらない方法を教えていただいた。
早速試してみた。
default に書いた
/etc/nginx/sites-enabled/default
location /world { add_header Content-Type "text/html"; return 200 "<h1>It works.(nginx)</h1>"; }
リロードして動作させる。
sudo nginx -t && sudo nginx -s reload
HTMLが表示された。
404 も試してみる
location /not_found { default_type text/html; return 404 "<h1>It works.(nginx)</h1>"; }
404 を返しつつHTMLが表示された。
設定がシンプルになりました。
echo モジュールを使わなくても良くなったので完璧だ。tmyk_kymさん、ありがとうございます。
これで、デフォルトサーバーが変なコンテンツを返却しなくて済むし、nginxの設定だけで完結する。
nginxの設定ファイルから直接HTMLやテキストを書き出しておけば設定がとてもシンプルでいいですね。フォルダへの依存が排除できて最高です。