apiVersion: v1 kind: ConfigMap metadata: name: {{ include "wordpress-nginx.fullname" . }}-nginx-config labels: {{- include "wordpress-nginx.labels" . | nindent 4 }} data: default.conf: | upstream php-fpm { server 127.0.0.1:9000; } server { listen 80; server_name _; root /var/www/html; index index.php index.html; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; client_max_body_size 64M; # リアルIPの取得(LoadBalancer/Ingress経由の場合) real_ip_header X-Forwarded-For; set_real_ip_from 0.0.0.0/0; location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass php-fpm; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_buffering off; fastcgi_read_timeout 300; # HTTPS対応(重要) fastcgi_param HTTPS $https if_not_empty; fastcgi_param REQUEST_SCHEME $scheme; # X-Forwarded-*ヘッダーの転送 fastcgi_param HTTP_X_FORWARDED_PROTO $http_x_forwarded_proto; fastcgi_param HTTP_X_FORWARDED_HOST $http_x_forwarded_host; fastcgi_param HTTP_X_FORWARDED_PORT $http_x_forwarded_port; fastcgi_param HTTP_X_FORWARDED_FOR $http_x_forwarded_for; fastcgi_param HTTP_X_REAL_IP $http_x_real_ip; # HTTPSが検出された場合の明示的な設定 set $https_value ""; if ($http_x_forwarded_proto = "https") { set $https_value "on"; } if ($scheme = "https") { set $https_value "on"; } fastcgi_param HTTPS $https_value; } location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ { expires max; log_not_found off; access_log off; } location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { allow all; log_not_found off; access_log off; } location ~ /\. { deny all; access_log off; log_not_found off; } }