レンタルサーバーや自宅サーバーをapacheで運用しているときにドメインを いくつか持っていると特定のドメインでしかアクセスできないように .htaccessで次のように制限している場合があります。

SetEnvIf Host "^www\.example\.com$" host_ok
order deny,allow
deny from all
allow from env=host_ok

この場合Macのブラウザからmms://でwmvファイルを指定してWindows Media Player 9を起動して 再生しようとしても「現在の状態では、要求は無効です」とか 「サーバーが応答しません」というエラーが発生して再生できません。

これを回避するにはwmv用のディレクトリを作ってそのディレクトリの .htaccessに次のように設定します。 ただし特定ドメインのアクセスの指定が無効になります。

SetEnvIf Request_URI "\.wmv$" stream_ok
order deny,allow
deny from all
allow from env=stream_ok

この設定をしなくてもファイルをダウンロードしてから再生すればMacでも映像を見ることは出来ます。 またWindowsにはこの設定は必要なかったりします。

その後、mod_rewriteが使えれば特定ドメインだけ残して全てアクセス禁止すれば Macでもwmvの再生に支障がないことが分かりました。結局こんな感じになりました。

RewriteEngine on
RewriteCond %{HTTP_HOST} www\.example\.jp [OR]
RewriteCond %{HTTP_HOST} example\.net [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.org
RewriteRule .* - [F]
SetEnvIf Request_URI "\.wmv$" stream_ok
order deny,allow
deny from all
allow from env=stream_ok

それにしてもなぜSetEnvIf Hostの指定ではMacで上手く再生できないのは謎のままです。

TigerのPostfixの設定を見てみる

Macでwmvを
見られるようにする設定
あなたは太陽系第番の小惑星です。