{"id":8719,"date":"2024-12-23T10:06:53","date_gmt":"2024-12-23T01:06:53","guid":{"rendered":"https:\/\/arakoki70.com\/?p=8719"},"modified":"2024-12-24T12:12:02","modified_gmt":"2024-12-24T03:12:02","slug":"nginx%e3%81%ae%e3%82%ad%e3%83%a3%e3%83%83%e3%82%b7%e3%83%a5%e3%82%92%e5%80%8b%e5%88%a5%e3%81%ab%e5%89%8a%e9%99%a4%e3%81%99%e3%82%8b-python%e3%82%b9%e3%82%af%e3%83%aa%e3%83%97%e3%83%88","status":"publish","type":"post","link":"https:\/\/arakoki70.com\/?p=8719","title":{"rendered":"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8"},"content":{"rendered":"<div style=\"background: #f5f5f5; padding: 10px; border: 2px solid #800000; text-align: center; box-shadow: 5px 5px 5px #aaa; font-size: 16px;\"><span style=\"font-size: 14pt;\"><strong><span style=\"font-size: 12pt;\">Web\u30b5\u30fc\u30d0\u30fc \u30b5\u30a4\u30c8\u306e\u7ba1\u7406<\/span><br \/>\r\nnginx<br \/>\r\n\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8<\/strong><\/span><\/div>\r\n<div>\u00a0<\/div>\r\n<div>nginx \u306b\u304a\u3051\u308b\u300cFastCGI \u30ad\u30e3\u30c3\u30b7\u30e5\u300d\u3068\u300cproxy \u30ad\u30e3\u30c3\u30b7\u30e5\u300d\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u7279\u5b9a\u3057\u3001\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u30d1\u30b9\u3092\u8a08\u7b97\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u4f5c\u3063\u305f\u3002<br \/>\r\n\u3053\u308c\u3092\u5229\u7528\u3057\u3066\u3001\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30a1\u30a4\u30eb\u3078\u306e\u30d1\u30b9\u3067\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8\u306b\u4ed5\u4e0a\u3052\u305f\u3002<\/div>\r\n<div>\u00a0<\/div>\r\n<div><a href=\"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/del-cache_0011.png\" data-rel=\"lightbox-gallery-QqSt6spZ\" data-rl_title=\"del-cache_0011\" data-rl_caption=\"\" title=\"del-cache_0011\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-8720\" src=\"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/del-cache_0011.png\" alt=\"\u5b9f\u884c\u7d50\u679c\uff1apython del_cache_f7.py page_id=904\" width=\"800\" height=\"158\" \/><\/a><\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u4ee5\u4e0b\u3001nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8 \u3092\u63b2\u8f09\u3002<\/div>\r\n<div><!--more--><\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\t<p>&nbsp;<\/p>\n\t<div align=\"center\" style=\"font-size:8pt;\">\u30b9\u30dd\u30f3\u30b5\u30fc \u30ea\u30f3\u30af<br \/>\n<!-- \t<script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script> -->\n\t<!-- \u8a18\u4e8b\u30fb\u30ec\u30b9\u30dd\u30f3\u30b7\u30d6-7 -->\n\t<ins class=\"adsbygoogle\"\n     style=\"display:block\"\n     data-ad-client=\"ca-pub-3816629014893825\"\n     data-ad-slot=\"1428770894\"\n     data-ad-format=\"auto\"\n     data-full-width-responsive=\"true\"><\/ins>\n\t<script>\n\t(adsbygoogle = window.adsbygoogle || []).push({});\n\t<\/script>\n\t<amp-ad width=\"100vw\" height=\"320\"\n     type=\"adsense\"\n     data-ad-client=\"ca-pub-3816629014893825\"\n     data-ad-slot=\"1428770894\"\n     data-auto-format=\"rspv\"\n     data-full-width=\"\">\n\t <div overflow=\"\"><\/div>\n\t<\/amp-ad>\n\t<\/div>\n\t<p>&nbsp;<\/p>\n<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u00a0<\/div>\r\n<div style=\"border: 1px solid #c0c0c0; padding: 7px; background: #f5f5f5; border-radius: 8px; position: relative; top: 0px; font-family: Arial, Helvetica, sans-serif; font-size: 16px;\">\r\n<div><strong><span style=\"font-size: 14pt;\">\u3000\u76ee\u3000\u6b21<\/span><\/strong><\/div>\r\n<div style=\"margin-left: 20pt; line-height: 200%;\"><span style=\"color: magenta;\">1.\u3000<\/span><a href=\"#title1\"><strong>nginx \u3067\u306e\u30b5\u30fc\u30d0\u30fc\u69cb\u6210\u3068\u30ad\u30e3\u30c3\u30b7\u30e5\u8a2d\u5b9a<\/strong><\/a><br \/>\r\n<span style=\"color: magenta;\">2.\u3000<\/span><a href=\"#title2\"><strong>WordPress \u306e \u30d1\u30fc\u30de\u30ea\u30f3\u30af\u69cb\u9020<\/strong><\/a><br \/>\r\n<span style=\"color: magenta;\">3.\u3000<\/span><a href=\"#title3\"><strong>Python\u30b9\u30af\u30ea\u30d7\u30c8\u306e\u4f7f\u3044\u65b9<\/strong><\/a><br \/>\r\n<span style=\"color: magenta;\">4.\u3000<\/span><a href=\"#title4\"><strong>fastcgi_cache \u3092\u524a\u9664\u3059\u308bPython\u30b9\u30af\u30ea\u30d7\u30c8<\/strong><\/a><br \/>\r\n<span style=\"color: magenta;\">5.\u3000<\/span><a href=\"#title5\"><strong>proxy_cache \u3092\u524a\u9664\u3059\u308bPython\u30b9\u30af\u30ea\u30d7\u30c8<\/strong><\/a><\/div>\r\n<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u00a0<\/div>\r\n<div>nginx \u3067\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b\u306b\u306f\u3001nginx\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u300c<strong>ngx_cache_purge<\/strong>\u300d\u3092\u4f7f\u7528\u3059\u308b\u65b9\u6cd5\u304c\u4e00\u822c\u7684\u306b\u7d39\u4ecb\u3055\u308c\u3066\u3044\u308b\u3002<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u3057\u304b\u3057\u3001\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30a1\u30a4\u30eb\u306e\u30d1\u30b9\u3092\u8a08\u7b97\u3059\u308b\u305f\u3081\u306e Python\u30b9\u30af\u30ea\u30d7\u30c8\u304c\u7528\u610f\u51fa\u6765\u305f\u306e\u3067\u3001\u3053\u308c\u3092\u62e1\u5f35\u3057\u3066\u3001Python\u30b9\u30af\u30ea\u30d7\u30c8 \u3067\u524a\u9664\u3059\u308b\u3053\u3068\u3068\u3057\u305f\u3002<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\n <div class=\"blog-card\"><a href=\"https:\/\/arakoki70.com\/?p=8539\">\n <div class=\"blog-card-thumbnail\"><img src='https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/fastcgi-cache_0111-100x100.png' alt='nginx FastCGI \u30ad\u30e3\u30c3\u30b7\u30e5\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3068\u30d1\u30b9' width=90 height=90 \/><\/div>\n <div class=\"blog-card-content\">\n <div class=\"blog-card-title\">nginx FastCGI \u30ad\u30e3\u30c3\u30b7\u30e5\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3068\u30d1\u30b9 <\/div>\n <div class=\"blog-card-excerpt\">Web\u30b5\u30fc\u30d0\u30fc \u30b5\u30a4\u30c8\u306e\u7ba1\u7406\r\nnginx Web\u30b5\u30fc\u30d0\u30fc\r\nfastcgi_cache \u30ad\u30e3\u30c3\u30b7\u30e5\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3068\u30d1\u30b9\r\n\u00a0\r\nnginx \u306e fastcgi_cache \u3092\u6b21\u306e\u3088\u3046\u306b\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002<\/div>\n <\/a>\n <div class=\"blog-card-date\">2024-12-01<\/div>\n <div class=\"blog-card-mdate\">2024-12-24<\/div>\n <\/div>\n <div class=\"clear\"><\/div>\n <div style=\"clear:both;\"> <\/div>\n <\/div><\/div>\r\n<div>\n <div class=\"blog-card\"><a href=\"https:\/\/arakoki70.com\/?p=8554\">\n <div class=\"blog-card-thumbnail\"><img src='https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/proxy-cache_0111-100x100.png' alt='nginx proxy \u30ad\u30e3\u30c3\u30b7\u30e5\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3068\u30d1\u30b9' width=90 height=90 \/><\/div>\n <div class=\"blog-card-content\">\n <div class=\"blog-card-title\">nginx proxy \u30ad\u30e3\u30c3\u30b7\u30e5\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3068\u30d1\u30b9 <\/div>\n <div class=\"blog-card-excerpt\">Web\u30b5\u30fc\u30d0\u30fc \u30b5\u30a4\u30c8\u306e\u7ba1\u7406\r\nnginx Web\u30b5\u30fc\u30d0\u30fc\r\nproxy_cache \u30ad\u30e3\u30c3\u30b7\u30e5\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3068\u30d1\u30b9\r\n\u00a0\r\nnginx \u306e proxy_cache \u3092\u6b21\u306e\u3088\u3046\u306b\u8a2d\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002\r\npr<\/div>\n <\/a>\n <div class=\"blog-card-date\">2024-12-03<\/div>\n <div class=\"blog-card-mdate\">2024-12-24<\/div>\n <\/div>\n <div class=\"clear\"><\/div>\n <div style=\"clear:both;\"> <\/div>\n <\/div><\/div>\r\n<div>\u00a0<\/div>\r\n<div id=\"title1\">\u00a0<\/div>\r\n<div>\u00a0<\/div>\r\n<div style=\"border: 1px solid #800000; padding: 5px 10px 3px 10px; background: #c5ff88;\"><strong>1. nginx \u3067\u306e\u30b5\u30fc\u30d0\u30fc\u69cb\u6210\u3068\u30ad\u30e3\u30c3\u30b7\u30e5\u8a2d\u5b9a<br \/>\r\n<\/strong><\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u30b5\u30fc\u30d0\u30fc\u306f\u5168\u3066 Raspberry Pi 4 Model B \u3067\u69cb\u6210\u3002<br \/>\r\n<a href=\"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/fastcgi-cache_0011.png\" data-rel=\"lightbox-gallery-QqSt6spZ\" data-rl_title=\"fastcgi-cache_0011\" data-rl_caption=\"\" title=\"fastcgi-cache_0011\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-8540\" src=\"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/fastcgi-cache_0011.png\" alt=\"\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u306b Reverse Proxy Server \u3092\u7acb\u3066\u3001\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u306bWeb\u30b5\u30fc\u30d0\u30fc\u3092\u914d\u7f6e\u3059\u308b\u69cb\u6210\u306b\u3057\u3066\u3044\u308b\" width=\"800\" height=\"314\" \/><\/a><\/div>\r\n<div>\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u306e\u30ea\u30d0\u30fc\u30b9\u30d7\u30ed\u30ad\u30b7 \u30b5\u30fc\u30d0\u30fc\u3067 proxy_cache \u3092\u8a2d\u5b9a\u3057\u3001\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u306eWeb\u30b5\u30fc\u30d0\u30fc\u3067\u306f fastcgi_cache \u304c\u4f7f\u308f\u308c\u308b\u8a2d\u5b9a\u3068\u306a\u3063\u3066\u3044\u308b\u3002<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u306eWeb\u30b5\u30fc\u30d0\u30fc\u3067\u306f\u300cWordPress\u300d\u304c\u7a3c\u50cd\u3057\u3066\u3044\u308b\u3002<\/div>\r\n<div>\u00a0<\/div>\r\n<div><strong><span style=\"color: #ff0000;\">\u203b\u7279\u7570\u70b9<\/span><\/strong>\uff1aReverse Proxy \u3067\u3001SSL\u8a3c\u660e\u66f8\u3092\u96c6\u4e2d\u7ba1\u7406\u3057\u3066\u3044\u308b\u305f\u3081\u3001\u30ea\u30d0\u30fc\u30b9\u30d7\u30ed\u30ad\u30b7\u3068Web\u30b5\u30fc\u30d0\u30fc\u9593\u306f\u3001\u3010HTTP\u3011\u901a\u4fe1\u306b\u306a\u3063\u3066\u3044\u308b\u3002<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u30ea\u30d0\u30fc\u30b9\u30d7\u30ed\u30ad\u30b7\u30b5\u30fc\u30d0\u30fc\u306e nginx.conf \u3067\u306e proxy_cache \u8a2d\u5b9a\u3002<br \/>\r\n\u2460\uff0ehttp \u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6\u3002<\/div>\r\n<pre><code class=\u201dhljs nginx\">    <span class=\"hljs-attribute\">proxy_cache_path<\/span> \/var\/cache\/nginx\/arakan60 levels=<span class=\"hljs-number\">1<\/span>:<span class=\"hljs-number\">2<\/span> keys_zone=arakan60:<span class=\"hljs-number\">10m<\/span> max_size=<span class=\"hljs-number\">1g<\/span> inactive=<span class=\"hljs-number\">7d<\/span> use_temp_path=<span class=\"hljs-literal\">off<\/span>;\r\n    <span class=\"hljs-attribute\">proxy_cache_path<\/span> \/var\/cache\/nginx\/arakoki70 levels=<span class=\"hljs-number\">1<\/span>:<span class=\"hljs-number\">2<\/span> keys_zone=arakoki70:<span class=\"hljs-number\">10m<\/span> max_size=<span class=\"hljs-number\">1g<\/span> inactive=<span class=\"hljs-number\">7d<\/span> use_temp_path=<span class=\"hljs-literal\">off<\/span>;\r\n    <span class=\"hljs-attribute\">proxy_cache_path<\/span> \/var\/cache\/nginx\/treksite levels=<span class=\"hljs-number\">1<\/span>:<span class=\"hljs-number\">2<\/span> keys_zone=treksite:<span class=\"hljs-number\">10m<\/span> max_size=<span class=\"hljs-number\">1g<\/span> inactive=<span class=\"hljs-number\">7d<\/span> use_temp_path=<span class=\"hljs-literal\">off<\/span>;<\/code><\/pre>\r\n<div>\u2461\uff0e\u5404\u30c9\u30e1\u30a4\u30f3\u5225\u306e location\u00a0\u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6\u3002<\/div>\r\n<pre><code class=\u201dhljs nginx\">    <span class=\"hljs-attribute\">location<\/span> \/ {\r\n\t<span class=\"hljs-comment\"># \u30e6\u30fc\u30b6\u30fc\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8\u304c\u6307\u5b9a\u306e\u6587\u5b57\u5217\u3092\u542b\u3080\u5834\u5408\u306b\u30a2\u30af\u30bb\u30b9\u3092\u62d2\u5426<\/span>\r\n\t<span class=\"hljs-attribute\">include<\/span> conf.d\/sotodasi\/agent-block.conf;\r\n\r\n        <span class=\"hljs-attribute\">proxy_pass<\/span> http:\/\/192.168.11.107;\r\n\r\n\t<span class=\"hljs-attribute\">proxy_cache<\/span> arakoki70;\r\n\t<span class=\"hljs-attribute\">proxy_cache_key<\/span> <span class=\"hljs-string\">\"<span class=\"hljs-variable\">$scheme<\/span><span class=\"hljs-variable\">$request_method<\/span><span class=\"hljs-variable\">$host<\/span><span class=\"hljs-variable\">$request_uri<\/span>\"<\/span>;\r\n\t<span class=\"hljs-attribute\">proxy_cache_valid<\/span> <span class=\"hljs-number\">200<\/span> <span class=\"hljs-number\">301<\/span> <span class=\"hljs-number\">302<\/span> <span class=\"hljs-number\">7d<\/span>;\r\n\t<span class=\"hljs-attribute\">proxy_cache_valid<\/span> <span class=\"hljs-number\">404<\/span> <span class=\"hljs-number\">1h<\/span>;\r\n\t<span class=\"hljs-attribute\">proxy_ignore_headers<\/span> Cache-Control Expires;\r\n\t<span class=\"hljs-attribute\">add_header<\/span> X-Proxy-Cache <span class=\"hljs-variable\">$upstream_cache_status<\/span>;\r\n            \r\n\t<span class=\"hljs-comment\"># \u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u30d0\u30a4\u30d1\u30b9\u3059\u308b\u6761\u4ef6<\/span>\r\n\t<span class=\"hljs-attribute\">set<\/span> <span class=\"hljs-variable\">$skip_cache<\/span> <span class=\"hljs-number\">0<\/span>;\r\n\t<span class=\"hljs-attribute\">if<\/span> (<span class=\"hljs-variable\">$http_cookie<\/span> <span class=\"hljs-regexp\">~* \"wordpress_logged_in|comment_author\")<\/span> {\r\n\t    <span class=\"hljs-attribute\">set<\/span> <span class=\"hljs-variable\">$skip_cache<\/span> <span class=\"hljs-number\">1<\/span>;\r\n\t}\r\n\t<span class=\"hljs-attribute\">proxy_cache_bypass<\/span> <span class=\"hljs-variable\">$skip_cache<\/span>;\r\n\t<span class=\"hljs-attribute\">proxy_no_cache<\/span> <span class=\"hljs-variable\">$skip_cache<\/span>;<\/code><\/pre>\r\n<div>\u00a0<\/div>\r\n<div>\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u306e\u3001\u30c9\u30e1\u30a4\u30f3\u5225Web \u30b5\u30fc\u30d0\u30fc\u306e http \u30c7\u30a3\u30ec\u30af\u30c6\u30a3\u30d6\u3067\u306e fastcgi_cache \u8a2d\u5b9a\u3002<\/div>\r\n<pre><code class=\u201dhljs nginx\"><span class=\"hljs-attribute\">fastcgi_cache_path<\/span> \/var\/cache\/nginx levels=<span class=\"hljs-number\">1<\/span>:<span class=\"hljs-number\">2<\/span> keys_zone=farakoki70:<span class=\"hljs-number\">10m<\/span> max_size=<span class=\"hljs-number\">500m<\/span> inactive=<span class=\"hljs-number\">7d<\/span> use_temp_path=<span class=\"hljs-literal\">off<\/span>;\r\n<span class=\"hljs-attribute\">fastcgi_cache_key<\/span> <span class=\"hljs-string\">\"<span class=\"hljs-variable\">$scheme<\/span><span class=\"hljs-variable\">$request_method<\/span><span class=\"hljs-variable\">$host<\/span><span class=\"hljs-variable\">$request_uri<\/span>\"<\/span>;<\/code><\/pre>\r\n<div>\u00a0<\/div>\r\n<div id=\"title2\">\u00a0<\/div>\r\n<div>\u00a0<\/div>\r\n<div style=\"border: 1px solid #800000; padding: 5px 10px 3px 10px; background: #c5ff88;\"><strong>2. WordPress \u306e \u30d1\u30fc\u30de\u30ea\u30f3\u30af\u69cb\u9020<\/strong><\/div>\r\n<div>\u00a0<\/div>\r\n<div>WordPress \u3067\u306e\u30d1\u30fc\u30de\u30ea\u30f3\u30af\u306e\u8a2d\u5b9a\u306f\u3001\u57fa\u672c\u306e<\/div>\r\n<div style=\"border: 1px solid #4169e1; padding: 5px 10px 3px 10px; background: #f0f8ff; border-radius: 5px; position: relative; top: 0px;\"><strong>https:\/\/arakoki70.com\/?p=123<\/strong><\/div>\r\n<div>\u3068\u306a\u3063\u3066\u3044\u308b\u3002<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u5f93\u3063\u3066\u3001\u30b5\u30a4\u30c8\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308bURL\u306f\u6b21\u306e\u3088\u3046\u306b\u306a\u308b\u3002<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u8a18\u4e8b\u306e\u5834\u5408\u306e\u4f8b\uff1a<\/div>\r\n<div style=\"border: 1px solid #4169e1; padding: 5px 10px 3px 10px; background: #f0f8ff; border-radius: 5px; position: relative; top: 0px;\"><strong>https:\/\/arakoki70.com\/?p=8686<\/strong><\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u56fa\u5b9a\u30da\u30fc\u30b8\u306e\u5834\u5408\u306e\u4f8b\uff1a<\/div>\r\n<div style=\"border: 1px solid #4169e1; padding: 5px 10px 3px 10px; background: #f0f8ff; border-radius: 5px; position: relative; top: 0px;\"><strong>https:\/\/arakoki70.com\/?page_id=904<\/strong><\/div>\r\n<div>\u00a0<\/div>\r\n<div id=\"title3\">\u00a0<\/div>\r\n<div>\u00a0<\/div>\r\n<div style=\"border: 1px solid #800000; padding: 5px 10px 3px 10px; background: #c5ff88;\"><strong>3. Python\u30b9\u30af\u30ea\u30d7\u30c8\u306e\u4f7f\u3044\u65b9<\/strong><\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u524a\u9664\u5bfe\u8c61\u3068\u306a\u308b\u30ad\u30e3\u30c3\u30b7\u30e5\u306f\u3001WordPress\u306e\u8a18\u4e8b\u30da\u30fc\u30b8\u3084\u56fa\u5b9a\u30da\u30fc\u30b8\u306b\u306a\u308b\u306e\u3067\u3001\u3053\u308c\u3089\u306e\u30da\u30fc\u30b8ID\u3092 Python\u30b9\u30af\u30ea\u30d7\u30c8\u306b\u300c\u5f15\u6570\u300d\u3068\u3057\u3066\u6e21\u3059\u65b9\u5f0f\u3068\u3057\u305f\u3002<\/div>\r\n<div>\u00a0<\/div>\r\n<div>Python\u30b9\u30af\u30ea\u30d7\u30c8\u306e\u540d\u524d\uff1a<span style=\"color: #0000ff;\"><strong>del_cache_f7.py<\/strong><\/span> \u3068\u3057\u305f\u5834\u5408\u3002<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u8a18\u4e8b\u306e\u5834\u5408\u306e\u5f15\u6570\u6307\u5b9a\u4f8b\uff1a<\/div>\r\n<div style=\"border: 1px solid #4169e1; padding: 5px 10px 3px 10px; background: #f0f8ff; border-radius: 5px; position: relative; top: 0px;\"><strong>python del_cache_f7.py <span style=\"color: #ff0000;\">p=8686<\/span><\/strong><\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u56fa\u5b9a\u30da\u30fc\u30b8\u306e\u5834\u5408\u306e\u5f15\u6570\u6307\u5b9a\u4f8b\uff1a<\/div>\r\n<div style=\"border: 1px solid #4169e1; padding: 5px 10px 3px 10px; background: #f0f8ff; border-radius: 5px; position: relative; top: 0px;\"><strong>python del_cache_f7.py <span style=\"color: #ff0000;\">page_id=904<\/span><\/strong><\/div>\r\n<div>\u00a0<\/div>\r\n<div id=\"title4\">\u00a0<\/div>\r\n<div>\u00a0<\/div>\r\n<div style=\"border: 1px solid #800000; padding: 5px 10px 3px 10px; background: #c5ff88;\"><strong>4. fastcgi_cache \u3092\u524a\u9664\u3059\u308bPython\u30b9\u30af\u30ea\u30d7\u30c8<br \/>\r\n<\/strong><\/div>\r\n<div>\u00a0<\/div>\r\n<div>fastcgi \u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u30ad\u30fc\u306f\u6b21\u306e\u3088\u3046\u306b\u306a\u308b\uff1a\u3010HTTP\u3011\u901a\u4fe1\u306b\u3057\u3066\u3044\u308b\u305f\u3081\u3001<br \/>\r\n<strong><span style=\"color: #ff0000;\">http<\/span><\/strong>GETarakoki70.com\/?p=8686<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u3067\u306e fastcgi_cache \u3092\u524a\u9664\u3059\u308bPython\u30b9\u30af\u30ea\u30d7\u30c8\u3002<\/div>\r\n<pre><code class=\u201dhljs python\"><span class=\"hljs-keyword\">import<\/span> argparse\r\n<span class=\"hljs-keyword\">import<\/span> hashlib\r\n<span class=\"hljs-keyword\">import<\/span> os\r\n<span class=\"hljs-keyword\">import<\/span> subprocess\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title\">calculate_md5<\/span><span class=\"hljs-params\">(cache_key)<\/span>:<\/span>\r\n    <span class=\"hljs-string\">\"\"\"\u6e21\u3055\u308c\u305f\u30ad\u30e3\u30c3\u30b7\u30e5\u30ad\u30fc\u306eMD5\u30cf\u30c3\u30b7\u30e5\u3092\u8a08\u7b97\"\"\"<\/span>\r\n    <span class=\"hljs-keyword\">return<\/span> hashlib.md5(cache_key.encode(<span class=\"hljs-string\">'utf-8'<\/span>)).hexdigest()\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title\">build_cache_path<\/span><span class=\"hljs-params\">(hash_value)<\/span>:<\/span>\r\n    <span class=\"hljs-string\">\"\"\"\u30ad\u30e3\u30c3\u30b7\u30e5\u30d1\u30b9\u3092\u7d44\u307f\u7acb\u3066\"\"\"<\/span>\r\n    level1 = hash_value[<span class=\"hljs-number\">-1<\/span>]  <span class=\"hljs-comment\"># \u30cf\u30c3\u30b7\u30e5\u306e\u672b\u5c3e1\u6587\u5b57<\/span>\r\n    level2 = hash_value[<span class=\"hljs-number\">-3<\/span>:<span class=\"hljs-number\">-1<\/span>]  <span class=\"hljs-comment\"># \u30cf\u30c3\u30b7\u30e5\u306e\u672b\u5c3e3\u6841\u76ee\u304b\u30892\u6587\u5b57<\/span>\r\n    <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-string\">f\"\/var\/cache\/nginx\/farakoki70\/<span class=\"hljs-subst\">{level1}<\/span>\/<span class=\"hljs-subst\">{level2}<\/span>\/<span class=\"hljs-subst\">{hash_value}<\/span>\"<\/span>\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title\">delete_cache<\/span><span class=\"hljs-params\">(cache_path)<\/span>:<\/span>\r\n    <span class=\"hljs-string\">\"\"\"\u6307\u5b9a\u3055\u308c\u305f\u30ad\u30e3\u30c3\u30b7\u30e5\u30d1\u30b9\u3092\u524a\u9664\"\"\"<\/span>\r\n    <span class=\"hljs-keyword\">try<\/span>:\r\n        print(<span class=\"hljs-string\">f\"Deleting cache path: <span class=\"hljs-subst\">{cache_path}<\/span>\"<\/span>)\r\n        subprocess.run([<span class=\"hljs-string\">\"sudo\"<\/span>, <span class=\"hljs-string\">\"rm\"<\/span>, <span class=\"hljs-string\">\"-r\"<\/span>, cache_path], check=<span class=\"hljs-literal\">True<\/span>)\r\n        print(<span class=\"hljs-string\">\"Cache deleted successfully.\"<\/span>)\r\n    <span class=\"hljs-keyword\">except<\/span> subprocess.CalledProcessError <span class=\"hljs-keyword\">as<\/span> e:\r\n        print(<span class=\"hljs-string\">f\"Error: Failed to delete cache. <span class=\"hljs-subst\">{e}<\/span>\"<\/span>)\r\n        exit(<span class=\"hljs-number\">1<\/span>)\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title\">main<\/span><span class=\"hljs-params\">()<\/span>:<\/span>\r\n    <span class=\"hljs-comment\"># \u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u5f15\u6570\u3092\u89e3\u6790<\/span>\r\n    parser = argparse.ArgumentParser(description=<span class=\"hljs-string\">\"Delete cache based on parameter.\"<\/span>)\r\n    parser.add_argument(<span class=\"hljs-string\">\"param\"<\/span>, help=<span class=\"hljs-string\">\"The parameter in the format 'key=value'\"<\/span>, type=str)\r\n    args = parser.parse_args()\r\n\r\n    <span class=\"hljs-comment\"># \u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u306e\u30c1\u30a7\u30c3\u30af<\/span>\r\n    <span class=\"hljs-keyword\">if<\/span> <span class=\"hljs-string\">\"=\"<\/span> <span class=\"hljs-keyword\">not<\/span> <span class=\"hljs-keyword\">in<\/span> args.param:\r\n        print(<span class=\"hljs-string\">\"Error: Parameter must be in the format 'key=value'\"<\/span>)\r\n        exit(<span class=\"hljs-number\">1<\/span>)\r\n\r\n    <span class=\"hljs-comment\"># \u30ad\u30e3\u30c3\u30b7\u30e5\u30ad\u30fc\u3092\u751f\u6210<\/span>\r\n    base_url = <span class=\"hljs-string\">\"httpGETarakoki70.com\/\"<\/span>\r\n    cache_key = <span class=\"hljs-string\">f\"<span class=\"hljs-subst\">{base_url}<\/span>?<span class=\"hljs-subst\">{args.param}<\/span>\"<\/span>\r\n    print(<span class=\"hljs-string\">f\"Cache key: <span class=\"hljs-subst\">{cache_key}<\/span>\"<\/span>)\r\n\r\n    <span class=\"hljs-comment\"># MD5\u30cf\u30c3\u30b7\u30e5\u5024\u3092\u8a08\u7b97<\/span>\r\n    hash_value = calculate_md5(cache_key)\r\n    print(<span class=\"hljs-string\">f\"MD5 hash: <span class=\"hljs-subst\">{hash_value}<\/span>\"<\/span>)\r\n\r\n    <span class=\"hljs-comment\"># \u30ad\u30e3\u30c3\u30b7\u30e5\u30d1\u30b9\u3092\u69cb\u7bc9<\/span>\r\n    cache_path = build_cache_path(hash_value)\r\n    print(<span class=\"hljs-string\">f\"Cache path: <span class=\"hljs-subst\">{cache_path}<\/span>\"<\/span>)\r\n\r\n    <span class=\"hljs-comment\"># \u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u524a\u9664<\/span>\r\n    delete_cache(cache_path)\r\n\r\n<span class=\"hljs-keyword\">if<\/span> __name__ == <span class=\"hljs-string\">\"__main__\"<\/span>:\r\n    main()<\/code><\/pre>\r\n<div>\u00a0<\/div>\r\n<div>\u5b9f\u884c\u7d50\u679c\uff1apython del_cache_f7.py page_id=904<br \/>\r\n<a href=\"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/del-cache_0011.png\" data-rel=\"lightbox-gallery-QqSt6spZ\" data-rl_title=\"del-cache_0011\" data-rl_caption=\"\" title=\"del-cache_0011\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-8720\" src=\"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/del-cache_0011.png\" alt=\"\u5b9f\u884c\u7d50\u679c\uff1apython del_cache_f7.py page_id=904\" width=\"800\" height=\"158\" \/><\/a><\/div>\r\n<div>\u00a0<\/div>\r\n<div id=\"title5\">\u00a0<\/div>\r\n<div>\u00a0<\/div>\r\n<div style=\"border: 1px solid #800000; padding: 5px 10px 3px 10px; background: #c5ff88;\"><strong>5. proxy_cache \u3092\u524a\u9664\u3059\u308bPython\u30b9\u30af\u30ea\u30d7\u30c8<\/strong><\/div>\r\n<div>\u00a0<\/div>\r\n<div>proxy \u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u30ad\u30fc\u306f\u6b21\u306e\u3088\u3046\u306b\u306a\u308b\uff1a\u3010HTTPS\u3011\u901a\u4fe1<br \/>\r\n<strong><span style=\"color: #ff0000;\">https<\/span><\/strong>GETarakoki70.com\/?p=8686<\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u3067\u306e proxy_cache \u3092\u524a\u9664\u3059\u308bPython\u30b9\u30af\u30ea\u30d7\u30c8\u3002<\/div>\r\n<pre><code class=\u201dhljs python\"><span class=\"hljs-keyword\">import<\/span> argparse\r\n<span class=\"hljs-keyword\">import<\/span> hashlib\r\n<span class=\"hljs-keyword\">import<\/span> os\r\n<span class=\"hljs-keyword\">import<\/span> subprocess\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title\">calculate_md5<\/span><span class=\"hljs-params\">(cache_key)<\/span>:<\/span>\r\n    <span class=\"hljs-string\">\"\"\"\u6e21\u3055\u308c\u305f\u30ad\u30e3\u30c3\u30b7\u30e5\u30ad\u30fc\u306eMD5\u30cf\u30c3\u30b7\u30e5\u3092\u8a08\u7b97\"\"\"<\/span>\r\n    <span class=\"hljs-keyword\">return<\/span> hashlib.md5(cache_key.encode(<span class=\"hljs-string\">'utf-8'<\/span>)).hexdigest()\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title\">build_cache_path<\/span><span class=\"hljs-params\">(hash_value)<\/span>:<\/span>\r\n    <span class=\"hljs-string\">\"\"\"\u30ad\u30e3\u30c3\u30b7\u30e5\u30d1\u30b9\u3092\u7d44\u307f\u7acb\u3066\"\"\"<\/span>\r\n    level1 = hash_value[<span class=\"hljs-number\">-1<\/span>]  <span class=\"hljs-comment\"># \u30cf\u30c3\u30b7\u30e5\u306e\u672b\u5c3e1\u6587\u5b57<\/span>\r\n    level2 = hash_value[<span class=\"hljs-number\">-3<\/span>:<span class=\"hljs-number\">-1<\/span>]  <span class=\"hljs-comment\"># \u30cf\u30c3\u30b7\u30e5\u306e\u672b\u5c3e3\u6841\u76ee\u304b\u30892\u6587\u5b57<\/span>\r\n    <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-string\">f\"\/var\/cache\/nginx\/arakoki70\/<span class=\"hljs-subst\">{level1}<\/span>\/<span class=\"hljs-subst\">{level2}<\/span>\/<span class=\"hljs-subst\">{hash_value}<\/span>\"<\/span>\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title\">delete_cache<\/span><span class=\"hljs-params\">(cache_path)<\/span>:<\/span>\r\n    <span class=\"hljs-string\">\"\"\"\u6307\u5b9a\u3055\u308c\u305f\u30ad\u30e3\u30c3\u30b7\u30e5\u30d1\u30b9\u3092\u524a\u9664\"\"\"<\/span>\r\n    <span class=\"hljs-keyword\">try<\/span>:\r\n        print(<span class=\"hljs-string\">f\"Deleting cache path: <span class=\"hljs-subst\">{cache_path}<\/span>\"<\/span>)\r\n        subprocess.run([<span class=\"hljs-string\">\"sudo\"<\/span>, <span class=\"hljs-string\">\"rm\"<\/span>, <span class=\"hljs-string\">\"-r\"<\/span>, cache_path], check=<span class=\"hljs-literal\">True<\/span>)\r\n        print(<span class=\"hljs-string\">\"Cache deleted successfully.\"<\/span>)\r\n    <span class=\"hljs-keyword\">except<\/span> subprocess.CalledProcessError <span class=\"hljs-keyword\">as<\/span> e:\r\n        print(<span class=\"hljs-string\">f\"Error: Failed to delete cache. <span class=\"hljs-subst\">{e}<\/span>\"<\/span>)\r\n        exit(<span class=\"hljs-number\">1<\/span>)\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title\">main<\/span><span class=\"hljs-params\">()<\/span>:<\/span>\r\n    <span class=\"hljs-comment\"># \u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u5f15\u6570\u3092\u89e3\u6790<\/span>\r\n    parser = argparse.ArgumentParser(description=<span class=\"hljs-string\">\"Delete cache based on parameter.\"<\/span>)\r\n    parser.add_argument(<span class=\"hljs-string\">\"param\"<\/span>, help=<span class=\"hljs-string\">\"The parameter in the format 'key=value'\"<\/span>, type=str)\r\n    args = parser.parse_args()\r\n\r\n    <span class=\"hljs-comment\"># \u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u306e\u30c1\u30a7\u30c3\u30af<\/span>\r\n    <span class=\"hljs-keyword\">if<\/span> <span class=\"hljs-string\">\"=\"<\/span> <span class=\"hljs-keyword\">not<\/span> <span class=\"hljs-keyword\">in<\/span> args.param:\r\n        print(<span class=\"hljs-string\">\"Error: Parameter must be in the format 'key=value'\"<\/span>)\r\n        exit(<span class=\"hljs-number\">1<\/span>)\r\n\r\n    <span class=\"hljs-comment\"># \u30ad\u30e3\u30c3\u30b7\u30e5\u30ad\u30fc\u3092\u751f\u6210<\/span>\r\n    base_url = <span class=\"hljs-string\">\"httpsGETarakoki70.com\/\"<\/span>\r\n    cache_key = <span class=\"hljs-string\">f\"<span class=\"hljs-subst\">{base_url}<\/span>?<span class=\"hljs-subst\">{args.param}<\/span>\"<\/span>\r\n    print(<span class=\"hljs-string\">f\"Cache key: <span class=\"hljs-subst\">{cache_key}<\/span>\"<\/span>)\r\n\r\n    <span class=\"hljs-comment\"># MD5\u30cf\u30c3\u30b7\u30e5\u5024\u3092\u8a08\u7b97<\/span>\r\n    hash_value = calculate_md5(cache_key)\r\n    print(<span class=\"hljs-string\">f\"MD5 hash: <span class=\"hljs-subst\">{hash_value}<\/span>\"<\/span>)\r\n\r\n    <span class=\"hljs-comment\"># \u30ad\u30e3\u30c3\u30b7\u30e5\u30d1\u30b9\u3092\u69cb\u7bc9<\/span>\r\n    cache_path = build_cache_path(hash_value)\r\n    print(<span class=\"hljs-string\">f\"Cache path: <span class=\"hljs-subst\">{cache_path}<\/span>\"<\/span>)\r\n\r\n    <span class=\"hljs-comment\"># \u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u524a\u9664<\/span>\r\n    delete_cache(cache_path)\r\n\r\n<span class=\"hljs-keyword\">if<\/span> __name__ == <span class=\"hljs-string\">\"__main__\"<\/span>:\r\n    main()<\/code><\/pre>\r\n<div>\u00a0<\/div>\r\n<div>\u5b9f\u884c\u7d50\u679c\uff1apython del-cache_p7.py p=8686<br \/>\r\n<a href=\"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/del-cache_0021.png\" data-rel=\"lightbox-gallery-QqSt6spZ\" data-rl_title=\"del-cache_0021\" data-rl_caption=\"\" title=\"del-cache_0021\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-8721\" src=\"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/del-cache_0021.png\" alt=\"\u5b9f\u884c\u7d50\u679c\uff1apython del-cache_p7.py p=8686\" width=\"800\" height=\"157\" \/><\/a><\/div>\r\n<div>\u00a0<\/div>\r\n<div>\u00a0<\/div>\r\n<div style=\"text-align: right;\">\u4ee5\u4e0a\u3002<br \/>\r\n(2024.12.23)<\/div>\r\n<div style=\"clear: both;\">\u00a0<\/div>\r\n<div>\t<p>&nbsp;<\/p>\n\t<div align=\"center\" style=\"font-size:8pt;\">\u30b9\u30dd\u30f3\u30b5\u30fc \u30ea\u30f3\u30af<br \/>\n<!-- \t<script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script> -->\n\t<!-- \u8a18\u4e8b\u30fb\u30ec\u30b9\u30dd\u30f3\u30b7\u30d6-7 -->\n\t<ins class=\"adsbygoogle\"\n     style=\"display:block\"\n     data-ad-client=\"ca-pub-3816629014893825\"\n     data-ad-slot=\"1428770894\"\n     data-ad-format=\"auto\"\n     data-full-width-responsive=\"true\"><\/ins>\n\t<script>\n\t(adsbygoogle = window.adsbygoogle || []).push({});\n\t<\/script>\n\t<amp-ad width=\"100vw\" height=\"320\"\n     type=\"adsense\"\n     data-ad-client=\"ca-pub-3816629014893825\"\n     data-ad-slot=\"1428770894\"\n     data-auto-format=\"rspv\"\n     data-full-width=\"\">\n\t <div overflow=\"\"><\/div>\n\t<\/amp-ad>\n\t<\/div>\n\n\t<p>&nbsp;<\/p>\n\n\t<p align=\"center\">\n\t<amp-social-share type=\"email\"><\/amp-social-share>\n\t&nbsp;<amp-social-share type=\"facebook\" data-param-app_id=\"131027923993169\"><\/amp-social-share>\n\t&nbsp;<amp-social-share type=\"linkedin\"><\/amp-social-share>\n\t&nbsp;<amp-social-share type=\"pinterest\"><\/amp-social-share>\n\t&nbsp;<amp-social-share type=\"tumblr\"><\/amp-social-share>\n\t&nbsp;<amp-social-share type=\"twitter\"><\/amp-social-share>\n\t&nbsp;<amp-social-share type=\"whatsapp\"><\/amp-social-share>\n\t&nbsp;<amp-social-share type=\"line\"><\/amp-social-share>\n\t<\/p>\n\n\t<p>&nbsp;<\/p>\n\t\n\t<!-- \u95a2\u9023\u30fb\u30ec\u30b9\u30dd\u30f3\u30b7\u30d6 kanren-70 -->\n\t<div align=\"center\">\n\t\n\t<ins class=\"adsbygoogle\"\n     style=\"display:block\"\n     data-ad-format=\"autorelaxed\"\n     data-ad-client=\"ca-pub-3816629014893825\"\n     data-ad-slot=\"8839675487\"><\/ins>\n\t<script>\n     (adsbygoogle = window.adsbygoogle || []).push({});\n\t<\/script>\n\t\n\t<amp-ad width=\"100vw\" height=\"320\"\n\t\ttype=\"adsense\"\n\t\tdata-ad-client=\"ca-pub-3816629014893825\"\n\t\tdata-ad-slot=\"8839675487\"\n\t\tdata-auto-format=\"mcrspv\"\n\t\tdata-full-width=\"\">\n\t\t<div overflow=\"\"><\/div>\n\t<\/amp-ad>\n\t\n\t<\/div>\n\t\n\t<div> <\/div>\n\n\t<p>&nbsp;<\/p>\n<\/div>\r\n<div>\u00a0<\/div>","protected":false},"excerpt":{"rendered":"Web\u30b5\u30fc\u30d0\u30fc \u30b5\u30a4\u30c8\u306e\u7ba1\u7406 nginx \u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8 \u00a0 nginx \u306b\u304a\u3051\u308b\u300cFastCGI \u30ad\u30e3\u30c3\u30b7\u30e5\u300d\u3068\u300cproxy \u30ad\u30e3\u30c3\u30b7\u30e5\u300d\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u7279\u5b9a\u3057\u3001\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30a1\u30a4\u30eb\u3078\u306e &hellip; <p class=\"link-more\"><a href=\"https:\/\/arakoki70.com\/?p=8719\" class=\"more-link\"><span class=\"screen-reader-text\">&#8220;nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8&#8221; \u306e<\/span>\u7d9a\u304d\u3092\u8aad\u3080<\/a><\/p>","protected":false},"author":1,"featured_media":8540,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13],"tags":[],"class_list":["post-8719","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-02sevunyou"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8 - \u30a2\u30e9\u30b3\u30ad\u304b\u3089\u306e Raspberry Pi \u96fb\u5b50\u5de5\u4f5c<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/arakoki70.com\/?p=8719\" \/>\n<meta property=\"og:locale\" content=\"ja_JP\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8 - \u30a2\u30e9\u30b3\u30ad\u304b\u3089\u306e Raspberry Pi \u96fb\u5b50\u5de5\u4f5c\" \/>\n<meta property=\"og:description\" content=\"Web\u30b5\u30fc\u30d0\u30fc \u30b5\u30a4\u30c8\u306e\u7ba1\u7406 nginx \u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8 \u00a0 nginx \u306b\u304a\u3051\u308b\u300cFastCGI \u30ad\u30e3\u30c3\u30b7\u30e5\u300d\u3068\u300cproxy \u30ad\u30e3\u30c3\u30b7\u30e5\u300d\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u7279\u5b9a\u3057\u3001\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30a1\u30a4\u30eb\u3078\u306e &hellip; &quot;nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8&quot; \u306e\u7d9a\u304d\u3092\u8aad\u3080\" \/>\n<meta property=\"og:url\" content=\"https:\/\/arakoki70.com\/?p=8719\" \/>\n<meta property=\"og:site_name\" content=\"\u30a2\u30e9\u30b3\u30ad\u304b\u3089\u306e Raspberry Pi \u96fb\u5b50\u5de5\u4f5c\" \/>\n<meta property=\"article:published_time\" content=\"2024-12-23T01:06:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-24T03:12:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/fastcgi-cache_0011.png\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"314\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"tacsan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@hermione2207\" \/>\n<meta name=\"twitter:site\" content=\"@hermione2207\" \/>\n<meta name=\"twitter:label1\" content=\"\u57f7\u7b46\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"tacsan\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593\" \/>\n\t<meta name=\"twitter:data2\" content=\"14\u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719\"},\"author\":{\"name\":\"tacsan\",\"@id\":\"https:\\\/\\\/arakoki70.com\\\/#\\\/schema\\\/person\\\/d5fdbdb63e731d3f2d43880ccade4451\"},\"headline\":\"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8\",\"datePublished\":\"2024-12-23T01:06:53+00:00\",\"dateModified\":\"2024-12-24T03:12:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719\"},\"wordCount\":147,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/arakoki70.com\\\/#\\\/schema\\\/person\\\/d5fdbdb63e731d3f2d43880ccade4451\"},\"image\":{\"@id\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/arakoki70.com\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/fastcgi-cache_0011.png\",\"articleSection\":[\"02 \u30b5\u30fc\u30d0\u306e\u904b\u7528\"],\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/arakoki70.com\\\/?p=8719#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719\",\"url\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719\",\"name\":\"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8 - \u30a2\u30e9\u30b3\u30ad\u304b\u3089\u306e Raspberry Pi \u96fb\u5b50\u5de5\u4f5c\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/arakoki70.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/arakoki70.com\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/fastcgi-cache_0011.png\",\"datePublished\":\"2024-12-23T01:06:53+00:00\",\"dateModified\":\"2024-12-24T03:12:02+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719#breadcrumb\"},\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/arakoki70.com\\\/?p=8719\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719#primaryimage\",\"url\":\"https:\\\/\\\/arakoki70.com\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/fastcgi-cache_0011.png\",\"contentUrl\":\"https:\\\/\\\/arakoki70.com\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/fastcgi-cache_0011.png\",\"width\":800,\"height\":314,\"caption\":\"\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u306b Reverse Proxy Server \u3092\u7acb\u3066\u3001\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u306bWeb\u30b5\u30fc\u30d0\u30fc\u3092\u914d\u7f6e\u3059\u308b\u69cb\u6210\u306b\u3057\u3066\u3044\u308b\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/arakoki70.com\\\/?p=8719#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u30db\u30fc\u30e0\",\"item\":\"https:\\\/\\\/arakoki70.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/arakoki70.com\\\/#website\",\"url\":\"https:\\\/\\\/arakoki70.com\\\/\",\"name\":\"\u30a2\u30e9\u30b3\u30ad\u304b\u3089\u306e Raspberry Pi \u96fb\u5b50\u5de5\u4f5c\",\"description\":\"Around 70&#039;s \u30d6\u30ed\u30b0\u3078\u306e\u8a18\u4e8b\u6295\u7a3f\u304c\u751f\u6d3b\u76ee\u6a19\u306b \u30fb\u30fb\u30fb \u307e\u3060\u307e\u3060\u8f1d\u304f\",\"publisher\":{\"@id\":\"https:\\\/\\\/arakoki70.com\\\/#\\\/schema\\\/person\\\/d5fdbdb63e731d3f2d43880ccade4451\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/arakoki70.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ja\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/arakoki70.com\\\/#\\\/schema\\\/person\\\/d5fdbdb63e731d3f2d43880ccade4451\",\"name\":\"tacsan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/arakoki70.com\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/raspberry-toumei_4.png\",\"url\":\"https:\\\/\\\/arakoki70.com\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/raspberry-toumei_4.png\",\"contentUrl\":\"https:\\\/\\\/arakoki70.com\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/raspberry-toumei_4.png\",\"width\":80,\"height\":102,\"caption\":\"tacsan\"},\"logo\":{\"@id\":\"https:\\\/\\\/arakoki70.com\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/raspberry-toumei_4.png\"},\"sameAs\":[\"https:\\\/\\\/arakoki70.com\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8 - \u30a2\u30e9\u30b3\u30ad\u304b\u3089\u306e Raspberry Pi \u96fb\u5b50\u5de5\u4f5c","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/arakoki70.com\/?p=8719","og_locale":"ja_JP","og_type":"article","og_title":"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8 - \u30a2\u30e9\u30b3\u30ad\u304b\u3089\u306e Raspberry Pi \u96fb\u5b50\u5de5\u4f5c","og_description":"Web\u30b5\u30fc\u30d0\u30fc \u30b5\u30a4\u30c8\u306e\u7ba1\u7406 nginx \u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8 \u00a0 nginx \u306b\u304a\u3051\u308b\u300cFastCGI \u30ad\u30e3\u30c3\u30b7\u30e5\u300d\u3068\u300cproxy \u30ad\u30e3\u30c3\u30b7\u30e5\u300d\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u7279\u5b9a\u3057\u3001\u30ad\u30e3\u30c3\u30b7\u30e5\u30d5\u30a1\u30a4\u30eb\u3078\u306e &hellip; \"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8\" \u306e\u7d9a\u304d\u3092\u8aad\u3080","og_url":"https:\/\/arakoki70.com\/?p=8719","og_site_name":"\u30a2\u30e9\u30b3\u30ad\u304b\u3089\u306e Raspberry Pi \u96fb\u5b50\u5de5\u4f5c","article_published_time":"2024-12-23T01:06:53+00:00","article_modified_time":"2024-12-24T03:12:02+00:00","og_image":[{"width":800,"height":314,"url":"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/fastcgi-cache_0011.png","type":"image\/png"}],"author":"tacsan","twitter_card":"summary_large_image","twitter_creator":"@hermione2207","twitter_site":"@hermione2207","twitter_misc":{"\u57f7\u7b46\u8005":"tacsan","\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593":"14\u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/arakoki70.com\/?p=8719#article","isPartOf":{"@id":"https:\/\/arakoki70.com\/?p=8719"},"author":{"name":"tacsan","@id":"https:\/\/arakoki70.com\/#\/schema\/person\/d5fdbdb63e731d3f2d43880ccade4451"},"headline":"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8","datePublished":"2024-12-23T01:06:53+00:00","dateModified":"2024-12-24T03:12:02+00:00","mainEntityOfPage":{"@id":"https:\/\/arakoki70.com\/?p=8719"},"wordCount":147,"commentCount":0,"publisher":{"@id":"https:\/\/arakoki70.com\/#\/schema\/person\/d5fdbdb63e731d3f2d43880ccade4451"},"image":{"@id":"https:\/\/arakoki70.com\/?p=8719#primaryimage"},"thumbnailUrl":"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/fastcgi-cache_0011.png","articleSection":["02 \u30b5\u30fc\u30d0\u306e\u904b\u7528"],"inLanguage":"ja","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/arakoki70.com\/?p=8719#respond"]}]},{"@type":"WebPage","@id":"https:\/\/arakoki70.com\/?p=8719","url":"https:\/\/arakoki70.com\/?p=8719","name":"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8 - \u30a2\u30e9\u30b3\u30ad\u304b\u3089\u306e Raspberry Pi \u96fb\u5b50\u5de5\u4f5c","isPartOf":{"@id":"https:\/\/arakoki70.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/arakoki70.com\/?p=8719#primaryimage"},"image":{"@id":"https:\/\/arakoki70.com\/?p=8719#primaryimage"},"thumbnailUrl":"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/fastcgi-cache_0011.png","datePublished":"2024-12-23T01:06:53+00:00","dateModified":"2024-12-24T03:12:02+00:00","breadcrumb":{"@id":"https:\/\/arakoki70.com\/?p=8719#breadcrumb"},"inLanguage":"ja","potentialAction":[{"@type":"ReadAction","target":["https:\/\/arakoki70.com\/?p=8719"]}]},{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/arakoki70.com\/?p=8719#primaryimage","url":"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/fastcgi-cache_0011.png","contentUrl":"https:\/\/arakoki70.com\/wp-content\/uploads\/2024\/12\/fastcgi-cache_0011.png","width":800,"height":314,"caption":"\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u306b Reverse Proxy Server \u3092\u7acb\u3066\u3001\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u306bWeb\u30b5\u30fc\u30d0\u30fc\u3092\u914d\u7f6e\u3059\u308b\u69cb\u6210\u306b\u3057\u3066\u3044\u308b"},{"@type":"BreadcrumbList","@id":"https:\/\/arakoki70.com\/?p=8719#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u30db\u30fc\u30e0","item":"https:\/\/arakoki70.com\/"},{"@type":"ListItem","position":2,"name":"nginx\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u500b\u5225\u306b\u524a\u9664\u3059\u308b Python\u30b9\u30af\u30ea\u30d7\u30c8"}]},{"@type":"WebSite","@id":"https:\/\/arakoki70.com\/#website","url":"https:\/\/arakoki70.com\/","name":"\u30a2\u30e9\u30b3\u30ad\u304b\u3089\u306e Raspberry Pi \u96fb\u5b50\u5de5\u4f5c","description":"Around 70&#039;s \u30d6\u30ed\u30b0\u3078\u306e\u8a18\u4e8b\u6295\u7a3f\u304c\u751f\u6d3b\u76ee\u6a19\u306b \u30fb\u30fb\u30fb \u307e\u3060\u307e\u3060\u8f1d\u304f","publisher":{"@id":"https:\/\/arakoki70.com\/#\/schema\/person\/d5fdbdb63e731d3f2d43880ccade4451"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/arakoki70.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ja"},{"@type":["Person","Organization"],"@id":"https:\/\/arakoki70.com\/#\/schema\/person\/d5fdbdb63e731d3f2d43880ccade4451","name":"tacsan","image":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/arakoki70.com\/wp-content\/uploads\/2019\/12\/raspberry-toumei_4.png","url":"https:\/\/arakoki70.com\/wp-content\/uploads\/2019\/12\/raspberry-toumei_4.png","contentUrl":"https:\/\/arakoki70.com\/wp-content\/uploads\/2019\/12\/raspberry-toumei_4.png","width":80,"height":102,"caption":"tacsan"},"logo":{"@id":"https:\/\/arakoki70.com\/wp-content\/uploads\/2019\/12\/raspberry-toumei_4.png"},"sameAs":["https:\/\/arakoki70.com\/"]}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/arakoki70.com\/index.php?rest_route=\/wp\/v2\/posts\/8719","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/arakoki70.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/arakoki70.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/arakoki70.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/arakoki70.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=8719"}],"version-history":[{"count":0,"href":"https:\/\/arakoki70.com\/index.php?rest_route=\/wp\/v2\/posts\/8719\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/arakoki70.com\/index.php?rest_route=\/wp\/v2\/media\/8540"}],"wp:attachment":[{"href":"https:\/\/arakoki70.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=8719"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/arakoki70.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=8719"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/arakoki70.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=8719"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}