カテゴリー
Linux

Nginx のポート関係の変数を実際に出力して確認してみた

Nginx のポート関係の変数

  • $proxy_port: proxy_pass ディレクティブの中で指定されたプロキシされるサーバのポート番号、あるいはプロトコルのデフォルトのポート番号;
  • $proxy_protocol_port: PROXYプロトコルヘッダからのクライアントポート、そうでなければ空文字 (1.11.0)。 PROXYプロトコルはlistenディレクティブのproxy_protocol パラメータの設定によって前もって有効にされていなければなりません。
  • $proxy_protocol_server_port: server port from the PROXY protocol header (1.17.6). The PROXY protocol must be previously enabled by setting the proxy_protocol parameter in the listen directive.
  • $realip_remote_port: 元のクライアントポートを保持します
  • $remote_port: クライアントのポート
  • $server_port: リクエストを受け付けたサーバのポート

以上、公式ページとその日本語訳のページから抜粋でした。

カテゴリー
Linux

WordPress サイトヘルスの critical issue 2 つを解決したメモ

まとめ

  • Nginx 設定に proxy_set_header X-Forwarded-Port $server_port; を追加することで解決できた。
カテゴリー
Linux

Nginx で 80 と 443 ポートアクセスを両方とも受け付けて共存させる設定

ポイントと設定内容

  • server ディレクティブに 80 と 443 の両方の listen を書くだけ。
server {
    listen 80;
    listen 443 ssl;
... 略 ...
}

ちなみに、 80 番ポートへのアクセスを 443 番ポートへのアクセスに強制する設定

カテゴリー
Linux

Nginx + PHP-FPM で unix ドメインソケットを使ったシンプルな docker-compose.yml を書きました。2

ポイント

  • Docker イメージは、 alpine を使わない。
  • Nginx の実行ユーザと PHP-FPM の listen.owner 、 listen.group とを一致させる。
  • Nginx で fastcgi_pass に指定するファイルのディレクトリと、 PHP-FPM で listen に指定するファイルのディレクトリとを、 Docker Compose のトップレベルで定義する名前付き volume で共有する。
カテゴリー
Linux

セキュリティ、パフォーマンスをデフォルト設定から向上させる簡単な Nginx の SSL 設定をメモ

はじめに

Docker の nginx:latest (1.15.5) で SSL/TLS を使えるようにする最低限の Dockerfile を作りました – oki2a24 で最低限の SSL/TLS 設定を行いました。

今回は、それに加え、簡単な記述でセキュリティ、パフォーマンスを向上させる設定を追加していきます。

Nginx の SSL 設定

カテゴリー
Linux

Docker の nginx:latest (1.15.5) で SSL/TLS を使えるようにする最低限の Dockerfile を作りました

TLS/SSL で接続できる最低限の Nginx Dockerfile

FROM nginx:latest

RUN apt-get update && apt-get install -y \
    openssl \
    ssl-cert \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

COPY ./conf.d/ssl.conf /etc/nginx/conf.d/
server {
    listen       443 ssl;
    server_name  localhost;

    ssl_certificate      /etc/ssl/certs/ssl-cert-snakeoil.pem;
    ssl_certificate_key  /etc/ssl/private/ssl-cert-snakeoil.key;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }
}
カテゴリー
Apple

Nginx + PHP-FPM で unix ドメインソケットを使ったシンプルな docker-compose.yml を書きました。

はじめに

TCP/IP の 9000 ポートで Nginx から PHP へ接続することができるようになりました。これを、Unix ドメインソケットに変更したい、そんな中で得たことを残します。。

カテゴリー
Apple

【Docker】nginx:latest と nginx:alpine の違いを少し整理しました

nginx:latest と nginx:alpine のバージョンは同じ?

  • 結論: 同じ
  • それぞれのバージョン(2018年7月28日時点)
    • nginx:latest: 1.15.2
    • nginx:alpine: 1.15.2

以下、調べた方法です。

カテゴリー
Linux

Certbot によって変更された Nginx 設定の内容を見てみました

はじめに

WordPress を動かしているリバースプロキシとWebサーバの Nginx で、Let’s Encrypt と Certbot で SSL/TLS の発行、導入をしました記録♪ – oki2a24 にて SSL/TLS を導入しました。

その際、Certbot によって Nginx の設定ファイルが書き換えられました。具体的には certbot --nginx コマンドを実行することで、/etc/nginx/conf.d/default.conf ファイルが書き換えられました。

今回は、その内容を見てみます。

カテゴリー
WordPress

WordPress を動かしているリバースプロキシとWebサーバの Nginx で、Let’s Encrypt と certbot で SSL/TLS の発行、導入をしました記録♪

はじめに

本ブログをやっと、SSL/TLS 化しました。

Let’s Encrypt を認証局として、これの公式ツールである certbot を使用して、リバースプロキシもWebサーバも構築している Nginx に SSL/TLS を導入しましたので、その記録を試行錯誤も含めて記録してまいります。

まとめ

  • nginx 設定ファイルの書き換えも certbot に委ねたい場合、nginx 設定ファイルに日本語を入れるとエラーとなるため事前に削除しておく。
  • 作業前に、ファイアーウォール設定を変更して https の 443 ポートは開けておくとよい。
  • WordPress データベースの URL を修正するには、wp-cli を使えるようにして wp search-replace 'beforeurl' 'afterurl' とするのが楽。