- conf.d/hoge.com.conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
server { listen 80; server_name hoge.me; return 301 https://hoge$request_uri; } server { listen 443 ssl http2; server_name hoge.me; root /var/www/hoge.me; index index.html index.php; access_log /var/log/nginx/hoge.me.access.log main; error_log /var/log/nginx/hoge.me.error.log; ssl_certificate /etc/letsencrypt/live/hoge.me/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/hoge.me/privkey.pem; try_files $uri $uri/ /index.php?q=$uri&$args; location ~ \.php$ { fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; include fastcgi_params; } } |
- nginx.conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
user www-data; worker_processes auto; pid /run/nginx.pid; include /etc/nginx/modules-enabled/*.conf; events { worker_connections 1024; } http { sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '[nginx]\t' 'time:$time_iso8601\t' 'server_addr:$server_addr\t' 'host:$remote_addr\t' 'method:$request_method\t' 'reqsize:$request_length\t' 'uri:$request_uri\t' 'query:$query_string\t' 'status:$status\t' 'size:$body_bytes_sent\t' 'referer:$http_referer\t' 'ua:$http_user_agent\t' 'forwardedfor:$http_x_forwarded_for\t' 'reqtime:$request_time\t' 'apptime:$upstream_response_time\t'; access_log /var/log/nginx/access.log main; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Dropping SSLv3, ref: POODLE ssl_prefer_server_ciphers on; gzip on; gzip_http_version 1.0; gzip_disable "msie6"; gzip_proxied any; gzip_min_length 1024; gzip_comp_level 6; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript; open_file_cache max=100000 inactive=20s; open_file_cache_valid 30s; open_file_cache_min_uses 2; open_file_cache_errors on; gzip_vary on; gzip_static on; proxy_buffer_size 32k; proxy_buffers 50 32k; proxy_busy_buffers_size 32k; client_max_body_size 50M; include /etc/nginx/conf.d/*.conf; } |
サブディレクトリの場合
http://hoge.me/blog の場合で、ソースコードは /var/www/wp/hoge-blog/blog/
配下になる。
- blog.conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
server { listen 80; server_name hoge.me; root /var/www/wp/hoge-blog; index index.php index.html; access_log /var/log/nginx/blog.access.log main; error_log /var/log/nginx/blog.error.log; try_files $uri $uri/ /blog/index.php?q=$uri&$args; location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; try_files $uri =404; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location @wordpress { root /var/www/wp/hoge-blog/blog; fastcgi_index index.php; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root/index.php; include fastcgi_params; } } |
以下のほうがわかりやすいのと、同じドメインで一つにまとめられる。
- www.conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
server { listen 80; server_name hoge.me; access_log /var/log/nginx/access.log main; error_log /var/log/nginx/error.log; location /blog { root /var/www/wp/hoge-blog; index index.php index.html; try_files $uri $uri/ /blog/index.php?q=$uri&$args; location ~ \.php$ { fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; try_files $uri =404; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } } |
Was this helpful?
0 / 0
1989年生まれのFindy/SRE。ホスティングから大規模なアドテクなどのインフラエンジニアとして携わる。現在はサービスの信頼性向上、DevOps、可用性、レイテンシ、パフォーマンス、モニタリング、オブザーバビリティ、緊急対応、AWSでのインフラ構築、Docker開発環境の提供、IaC、新技術の検証、リファクタリング、セキュリティ強化、分析基盤の運用などを担当している。個人事業主では数社サーバー保守とベンチャー企業のSREインフラコンサルティングやMENTA/TechBullで未経験者にインフラのコーチング/コミュニティマネージャーとして立ち上げと運営をしている。また、過去「脆弱性スキャナVuls」のOSS活動もしており、自称エバンジェリスト/技術広報/テクニカルサポート/コントリビュータでもある。