1. nginx
nginx がエラーになって、起動されなくなりました。
- config file の場所が問題らしい。
今回は nginx -c "config-file" で起動することで回避しています。-- ToshinoriMaeno 2024-09-17 04:08:06
1.1. 1.25.4
/systemd で nginx.pid (/etc/nginx/../nginx.conf) が設定されない問題は解決して、
リブートでも起動されるようになりました。-- ToshinoriMaeno 2024-03-26 00:07:34
1.2. nginx news
nginx 1.24.0 に更新できました。 http://nginx.org/en/CHANGES-1.24
TLSv1.3 protocol is enabled by default.
Feature: experimental HTTP/3 support.
- 1,25 からなので、待つ。
1.3. alert
nginx 1.18のリモートコード実行(RCE) 0-dayの情報が公開されました。 https://twitter.com/futurevuls/status/1513206675938824196?s=20&t=f9R0uU44Ug12KjqBEW-4kw
このwikiは nginx 1.20 で動いています。
1.4. update
https://qiita.com/lustm5/items/aabd365aaeb873e7b17a Ubuntu22.04 nginx最新の安定版をインストールする
最終更新日 2022年08月11日
https://nginx.org/en/linux_packages.html#Ubuntu
DJB のpublic fileとmoinmoinを使っている。
どちらもSSL 証明書をサポートしていないので、 Reverse Proxy として Poundを使っていた。
Ubuntu server を使うことにしたのをきっかけにNginxを試してみた。
1.5. Docs
本家: https://nginx.org/en/docs/
Beginner’s Guide: https://nginx.org/en/docs/beginners_guide.html
Admin Guide: https://docs.nginx.com/nginx/admin-guide/
入門:
https://heartbeats.jp/hbblog/2012/02/nginx03.html
https://heartbeats.jp/hbblog/2012/06/nginx06.html
1.6. server_names
https://nginx.org/en/docs/http/server_names.html
1.7. https
証明書関連
server { listen 443 ssl; ssl on; ssl_certificate ssl/allcert.pem ssl_certificate_key ssl/private.pem; ... }
Admin から
server { listen 443 ssl; server_name www.example.com; ssl_certificate www.example.com.crt; ssl_certificate_key www.example.com.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!MD5; #... }
1.8. simple proxy server
- One of the frequent uses of nginx is setting it up as a proxy server, which means a server that receives requests, passes them to the proxied servers, retrieves responses from them, and sends them to the clients.
We will configure a basic proxy server, which serves requests of images with files from the local directory and sends all other requests to a proxied server. In this example, both servers will be defined on a single nginx instance.
First, define the proxied server by adding one more server block to the nginx’s configuration file with the following contents:
server { listen 8080; root /data/up1; location / { } }
Next, use the server configuration from the previous section and modify it to make it a proxy server configuration. In the first location block, put the proxy_pass directive with the protocol, name and port of the proxied server specified in the parameter (in our case, it is http://localhost:8080):
server { location / { proxy_pass http://localhost:8080; } location /images/ { root /data; } }