{"id":179,"date":"2024-12-11T19:19:39","date_gmt":"2024-12-11T10:19:39","guid":{"rendered":"https:\/\/team-okada.com\/?p=179"},"modified":"2026-01-12T16:14:53","modified_gmt":"2026-01-12T07:14:53","slug":"raspberry-pi-web%e3%82%b5%e3%83%bc%e3%83%90%e3%83%bc%e6%a7%8b%e7%af%89","status":"publish","type":"post","link":"https:\/\/team-okada.com\/?p=179","title":{"rendered":"Raspberry Pi Web\u30b5\u30fc\u30d0\u30fc\u69cb\u7bc9"},"content":{"rendered":"\n<p><\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Apache2\u306b\u3088\u308bWeb\u30b5\u30fc\u30d0\u30fc\u69cb\u7bc9<\/strong><\/p>\n\n\n\n<p><copy>apache2<\/copy>\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-652af64a08689654b03706a88e38ec81\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\"><copy>sudo apt-get install -y apache2<\/copy><\/pre>\n\n\n\n<p>apache2\u8d77\u52d5<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-2cd2aa7076bfa38aa7798bcd0077b828\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">sudo service apache2 start<\/pre>\n\n\n\n<p>\u30e6\u30fc\u30b6\u30fc\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u6709\u52b9\u5316<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-fbeb61adf400ebb221ca3fa7ca7a0b7d\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">sudo a2enmod userdir<\/pre>\n\n\n\n<p>CGI\u8a2d\u5b9a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-cdead4f8e517f7ae8148185bbd5411c0\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">sudo ln -s \/etc\/apache2\/mods-available\/cgi.load \/etc\/apache2\/mods-enabled\/cgi.load<\/pre>\n\n\n\n<p><\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-6d9fb550180b1d1fff129593b6c9884e\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">sudo nano \/etc\/apache2\/sites-available\/000-default.conf<\/pre>\n\n\n\n<p>28\u884c\u76ee\u306e # \u3092\u524a\u9664<\/p>\n\n\n\n<div style=\"padding: 10px 0px 10px 10px;background-color: #dcdcdc;font-size:14px;\">#Include conf-available\/serve-cgi-bin.conf<br>\u3000\u2193<br>Include conf-available\/serve-cgi-bin.conf<\/div>\n\n\n\n<p>\u62e1\u5f35\u5b50.py\u306eCGI\u304c\u52d5\u4f5c\u51fa\u6765\u308b\u3088\u3046\u306b\u8a2d\u5b9a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-8495c47ba9128c9bed0d154b1863dcfc\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">sudo nano \/etc\/apache2\/mods-available\/mime.conf<\/pre>\n\n\n\n<p>219\u884c\u76ee\u306e #\u3092\u524a\u9664\u3057\u3001\u6700\u5f8c\u306b .py\u3092\u8ffd\u52a0\u3057\u3066\u4e0a\u66f8\u304d\u4fdd\u5b58<\/p>\n\n\n\n<div style=\"padding: 10px 0px 10px 10px;background-color: #dcdcdc;font-size:14px;\">#AddHandler cgi-script .cgi<br>\u3000\u2193<br>AddHandler cgi-script .cgi .py<\/div>\n\n\n\n<p>CGI\u3092\u52d5\u304b\u3059\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306e\u8a2d\u5b9a<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-67a6f7111026e52fb1470633797b764d\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">sudo nano \/etc\/apache2\/conf-available\/serve-cgi-bin.conf<\/pre>\n\n\n\n<p>11\u884c\u76ee\u306e \/usr\/lib\/cgi-bin\/ \u3092 \/home\/pi\/public_html\/cgi-bin \u306b\u5909\u66f4<br>12\u884c\u76ee\u306e \/usr\/lib\/cgi-bin \u3092 \/home\/pi\/public_html\/cgi-bin \u306b\u5909\u66f4<\/p>\n\n\n\n<div style=\"padding: 10px 0px 10px 10px;background-color: #dcdcdc;font-size:14px;\">ScriptAlias \/cgi-bin\/ \/usr\/lib\/cgi-bin\/<br>&lt;Directory &#8220;\/usr\/lib\/cgi-bin&#8221;&gt;<br>\u3000\u2193<br>ScriptAlias \/cgi-bin\/ \/home\/pi\/public_html\/cgi-bin\/<br>&lt;Directory &#8220;\/home\/pi\/public_html\/cgi-bin&#8221;&gt;<\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>Apache\u5b9f\u884c\u30e6\u30fc\u30b6\u30fc\u5909\u66f4<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-f69a0c1de4e1a2f3a5e4ffe2aac13503\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">sudo nano \/etc\/apache2\/envvars<\/pre>\n\n\n\n<p>16\u884c\u76ee\u306e www-data \u3092 pi \u306b\u5909\u66f4\u3057\u3066\u4e0a\u66f8\u304d\u4fdd\u5b58<\/p>\n\n\n\n<div style=\"padding: 10px 0px 10px 10px;background-color: #dcdcdc;font-size:14px;\">export APACHE_RUN_USER=www-data<br>\u3000\u2193<br>export APACHE_RUN_USER=pi<\/div>\n\n\n\n<p>\u30e6\u30fc\u30b6\u30fc\u30c7\u30ec\u30af\u30c8\u30ea\u30fc\u306e\u524d\u306e~(\u30c1\u30eb\u30c0)\u3092\u524a\u9664<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-01e4563b3045f1d7ca0d9a9fcfbf16af\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">sudo nano \/etc\/apache2\/mods-enabled\/userdir.conf<\/pre>\n\n\n\n<p>userdir.conf\u30d5\u30a1\u30a4\u30eb\u306e\u6700\u5f8c\u306b\u8ffd\u8a18<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">&lt;IfModule mod_userdir.c&gt;\n#\n#\n    AliasMatch ^\/([^\/]+)\/(.*) \/home\/$1\/public_html\/$2\n&lt;\/IfModule&gt;<\/pre>\n\n\n\n<p>apache2\u518d\u8d77\u52d5<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-4ad93abe789694e2d25e4324362152fa\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">sudo service apache2 restart<\/pre>\n\n\n\n<p>cgi\u52d5\u4f5c\u78ba\u8a8d<\/p>\n\n\n\n<p><code>\u30db\u30fc\u30e0\u306bpublic_html\/cgi-bin\/<\/code>\u30d5\u30a9\u30eb\u30c0\u3092\u4f5c\u308b<\/p>\n\n\n\n<p>\u30db\u30fc\u30e0\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30fc\u306b\u623b\u308b<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">cd ~<\/pre>\n\n\n\n<p>\u300cpublic_html\u300d\u30d5\u30a9\u30eb\u30c0\u4f5c\u6210<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-d328bb7e448bdd62da482f54fdf7e241\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">mkdir public_html<\/pre>\n\n\n\n<p>\u300cpublic_html\u300d\u30d5\u30a9\u30eb\u30c0\u306b\u79fb\u52d5<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-d2ee85595f86ad8cfdba01aab7615410\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">cd public_html<\/pre>\n\n\n\n<p>\u300ccgi-bin\u300d\u30d5\u30a9\u30eb\u30c0\u4f5c\u6210<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-e69b0f7fae9e68015553c881cf74adbc\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">mkdir cgi-bin<\/pre>\n\n\n\n<p>\u300ccgi-bin\u300d\u30d5\u30a9\u30eb\u30c0\u306b\u79fb\u52d5<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-5256e83cdd6563960587b181ebe4e787\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">cd cgi-bin<\/pre>\n\n\n\n<p>\u30c6\u30b9\u30c8\u7528cgi\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">nano hello.cgi<\/pre>\n\n\n\n<p>\u4ee5\u4e0b\u306e\u5185\u5bb9\u3092\u66f8\u304d\u8fbc\u3080<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">#!\/bin\/bash\n\necho \"Content-Type: text\/html;charset=utf-8\"\necho \"\"\necho \"<html><body>HELLO CGI!!<\/body><\/html>\"<\/pre>\n\n\n\n<p>\u30d5\u30a1\u30a4\u30eb\u306e\u30d1\u30fc\u30df\u30c3\u30b7\u30e7\u30f3\u3092\u5b9f\u884c\u6a29\u9650\u306b\u5909\u66f4\u3059\u308b<\/p>\n\n\n\n<pre class=\"wp-block-preformatted has-base-color has-contrast-background-color has-text-color has-background has-link-color has-small-font-size\" style=\"padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--20);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--20)\">sudo chmod 755 hello.cgi<\/pre>\n\n\n\n<p>\u30d6\u30e9\u30a6\u30b6\u306e\u30a2\u30c9\u30ec\u30b9\u30d0\u30fc\u306b\u300chttp:\/\/192.168.0.201\/pi\/cgi-bin\/hello.cgi\u300d\u3067\u5165\u529b\u3059\u308b<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"595\" height=\"417\" src=\"http:\/\/team-okada.com\/wp-content\/uploads\/2024\/12\/web_cgi-1.png\" alt=\"\" class=\"wp-image-548\" srcset=\"https:\/\/team-okada.com\/wp-content\/uploads\/2024\/12\/web_cgi-1.png 595w, https:\/\/team-okada.com\/wp-content\/uploads\/2024\/12\/web_cgi-1-300x210.png 300w\" sizes=\"auto, (max-width: 595px) 100vw, 595px\" \/><\/figure>\n\n\n\n<p>\u4e0a\u8a18\u306e\u3088\u3046\u306b\u8868\u793a\u3055\u308c\u305f\u3089\u6210\u529f\u3067\u3059<\/p>\n\n\n\n<center><font size=\"3\"><a href=\"https:\/\/team-okada.com\/?p=142\" rel=\"prev\"><<\u524d\u306e\u8a18\u4e8b\u3078<\/a>&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;\n<a href=\"https:\/\/team-okada.com\/?p=70\" rel=\"next\">\u6b21\u306e\u8a18\u4e8b\u3078>><\/a><\/font><\/center>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Apache2\u306b\u3088\u308bWeb\u30b5\u30fc\u30d0\u30fc\u69cb\u7bc9 apache2\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb sudo apt-get install -y apache2 apache2\u8d77\u52d5 sudo service apache2 start \u30e6\u30fc\u30b6\u30fc\u30c7\u30a3\u30ec [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-179","post","type-post","status-publish","format-standard","hentry","category-asterisk"],"_links":{"self":[{"href":"https:\/\/team-okada.com\/index.php?rest_route=\/wp\/v2\/posts\/179","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/team-okada.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/team-okada.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/team-okada.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/team-okada.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=179"}],"version-history":[{"count":78,"href":"https:\/\/team-okada.com\/index.php?rest_route=\/wp\/v2\/posts\/179\/revisions"}],"predecessor-version":[{"id":1057,"href":"https:\/\/team-okada.com\/index.php?rest_route=\/wp\/v2\/posts\/179\/revisions\/1057"}],"wp:attachment":[{"href":"https:\/\/team-okada.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=179"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/team-okada.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=179"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/team-okada.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=179"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}