<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <cite xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">mod_rewrite</anchor> - Apache HTTP Server</cite>
(<time>2009-10-04 03:10:27 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriterule">http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriterule</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <cite xml:lang="en">mod_rewrite - Apache HTTP Server</cite>
(<time>2009-10-04 03:10:27 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html">http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <cite xml:lang="en">The Apache mod_rewrite Problem - Dracos.co.uk</cite>
(<time>2010-06-23 09:45:24 +09:00</time> 版)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.dracos.co.uk/code/apache-rewrite-problem/">http://www.dracos.co.uk/code/apache-rewrite-problem/</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <cite xml:lang="en">wakaba/perl-test-apache-rewriterules: Test: :RewriteRules</cite>, <time>2023-04-17T09:33:03.000Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/wakaba/perl-test-apache-rewriterules">https://github.com/wakaba/perl-test-apache-rewriterules</anchor-external></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> 
昔、某社のメインサーバーの設定ファイルは多数の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">バックエンドサーバー</anchor>に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">逆プロキシ</anchor>するすごく複雑な
<code>RewriteRule</code>
の集合体になっていて、やむなくそれをいじらざるを得ない技術者達はおそるおそる変更して本番サーバーが正常に動作するか目視点検していました。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> 
さすがに耐えられなくなって作ったのが <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;4</anchor-internal> <dfn><code>Test::Apache::RewriteRules</code></dfn> で、テストを実行すると当該設定ファイルを埋め込んだ設定ファイルを作って
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Apache</anchor> を起動します。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> 
これができてから本番反映の安心感が爆上がりしました。(でも変更が楽しくなって設定ファイルはますます複雑になっていきました。。。)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> 
あの当時は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CI</anchor> という概念もまだ広まっておらず、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">プログラム</anchor>でなくサーバー設定ファイルを<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">テスト</anchor>するという発想も他では聞いたことがなかったような。</p></body></html>