2007-08-03
XHTML の MIME は application/xhtml+xml
XHTML の 拡張子 は .xhtml で登録されている。
Content-Type は application/xhtml+xml でレスポンスがある。
IE は XHTML の MIME を認識しないので表示できない。
IE に HTML の MIME で送信すると表示できる。
mod_rewrite で書き換える方法が見つかる。
mod_rewrite を使う場合
<FilesMatch "\.xhtml\.?"> Options FollowSymLinks RewriteEngine On RewriteCond %{HTTP_ACCEPT} !application/xhtml\+xml RewriteRule .* - "[T=text/html]" </FilesMatch>
mod_rewrite だと期待した動作をする。
mod_rewrite を使わない設定だと、
<FilesMatch "\.xhtml$"> SetEnvIf Accept "application/xhtml\+xml" ACCEPT_XHTML Header set Content-Type text/html env=!ACCEPT_XHTML </FilesMatch>
で出来そうだが Content-Type がセットできない。
Content-Type をセットした後に上書きされている気がする。