投稿日:2004年11月16日 作成鷹の巣

No.17722 Apache2で、ディレクトリ毎のcharsetを設定は?



Apache2で、ディレクトリ毎のcharsetを設定は?

No.17722 投稿時間:2004年11月16日(Tue) 00:28 投稿者名:こりん URL:

Apache2について質問です。

Apacheのcharsetを
ディレクトリ毎に設定することはできるんでしょうか。
たとえば、
/var/www/htmlはeuc-jpで/var/www/html/aaa/ではshift_jisに設定するということです。

AddDefaultCharsetではEUC-JPとしたのですが
CGIがshift_jisで作られてるので、設定をかえるのが大変なので そのディレクトリだけ
shift_jisにしたいのです。
cgiの知識がなくエンコードの設定を変えるのが大変そうなので・・・

よろしくお願いします。


charset 指定をoffに。

No.17725 投稿時間:2004年11月16日(Tue) 08:49 投稿者名:Reboot URL:

> Apache2について質問です。
>
> Apacheのcharsetを
> ディレクトリ毎に設定することはできるんでしょうか。
> たとえば、
> /var/www/htmlはeuc-jpで/var/www/html/aaa/ではshift_jisに設定するということです。
>
> AddDefaultCharsetではEUC-JPとしたのですが
> CGIがshift_jisで作られてるので、設定をかえるのが大変なので そのディレクトリだけ
> shift_jisにしたいのです。
> cgiの知識がなくエンコードの設定を変えるのが大変そうなので・・・

httpd.conf の文字コード指定を
AddDefaultCharset Off に書き換える。
あるいは、コメントアウトしてしまう。

これで強制的な指定はなくなりましたから、
それぞれのwebファイルに、
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
などのような形で文字コード指定をする。

ディレクトリ毎のcharset設定はできないのでは?。


普通にできる?

No.17727 投稿時間:2004年11月16日(Tue) 11:15 投稿者名:松元 URL:

> それぞれのwebファイルに、
> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
> などのような形で文字コード指定をする。
>
> ディレクトリ毎のcharset設定はできないのでは?。

そんなことも無いはず。
http://httpd.apache.org/docs-2.1/ja/mod/core.html#adddefaultcharset
.htaccess でEUCでテストしてみましたが
HTTP/1.1 200 OK
Date: Tue, 16 Nov 2004 02:09:11 GMT
Server: Apache/2.0.48 (Unix)
Last-Modified: Mon, 15 Nov 2004 08:08:12 GMT
ETag: "56567a-1861-8aafd300"
Accept-Ranges: bytes
Content-Length: 6241
Connection: close
Content-Type: text/html; charset=EUC-JP
と出てきます。

私は.htaccessに入れる事を推奨しますが<directory>でも良いのではないかな


な~るほど。

No.17730 投稿時間:2004年11月16日(Tue) 18:08 投稿者名:Reboot URL:

先程 .htaccess には、

AddType "text/html; charset=Shift_JIS" html htm

と書き込んで、httpd.conf へは、

<Directory "/***/***">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
AddDefaultCharset Shift_JIS
</Directory>

と書き込んで設定が生きていることを確認しました。

普段 charset の指定は、httpd.conf で off にして、それぞれの
web ファイルで設定していましたので、気がつきませんでした。(^^;)
勉強になりました。m(^^)m

ただ実用面から考えると、どうなんでしょうこの設定は?。
わたしには面倒くさそうです。


個人的には、やはりきちんとEUC-JPに変換しておいた方が良いとおもう。

No.17733 投稿時間:2004年11月17日(Wed) 01:13 投稿者名:stranger URL:

> 先程 .htaccess には、
> > AddType "text/html; charset=Shift_JIS" html htm
> > と書き込んで、httpd.conf へは、
> > <Directory "/***/***">
> Options Indexes MultiViews
> AllowOverride None
> Order allow,deny
> Allow from all
> AddDefaultCharset Shift_JIS
> </Directory>
> > と書き込んで設定が生きていることを確認しました。
> > 普段 charset の指定は、httpd.conf で off にして、それぞれの
> web ファイルで設定していましたので、気がつきませんでした。(^^;)
> 勉強になりました。m(^^)m
> > ただ実用面から考えると、どうなんでしょうこの設定は?。
> わたしには面倒くさそうです。

これでShift_JISで書かれたCGI(perl?)が動くのとは別のように思うが?
個人的には、やはりきちんとEUC-JPに変換しておいた方が良いとおもう


|目次|掲示板|過去ログ目次|▲頁先頭|