Apache2.4에서 x-httpd-php를 사용할 때의 괴상한 행동

다음과 같은 깨진 문제입니다.
EUC_JP 로 기술하고 있는데, UTF-8 로 인식되어 문자 깨짐을 일으킵니다.


페이지 정보입니다.


문제는 apache2.conf에서 다음 설정을 지정할 때 발생합니다.

/etc/apache2/apache2.conf
(省略)
<Directory /var/www/>
        AddType application/x-httpd-php .htm
</Directory>
(省略)

문제를 일으키는 파일을 만드는 방법
UTF-8에서 u01.htm을 만든 다음 nkf로 EUC-JP로 변환합니다.

u01.htm
<!DOCTYPE html>
<HTML lang="ja-JP">
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=EUC-JP">
<title>Test Page Jun/28/2020</title>
</HEAD>

<BODY>
<H1>テスト / Test Page</H1>

<hr/>

<H2>テスト</H2>

<blockquote>
    Hello<p />
</blockquote>

<H2>おはようございます。</H2>

<a href="test02/">こんにちは</a><p />

<a href="test03/">今晩は</a><p />

<a href="test04/">さようなら</a><p />

<hr />
Jun/28/2020 AM 09:21<p />
</BODY>
</HTML>

변환 방법
nkf -e u01.htm > f01.htm

브라우저에서 u01.htm을 본 경우


f01.htm에 심볼릭 링크를 붙인 경우
ln -s f01.htm f01.html



페이지 정보


깨져있을 때 응답 헤더


문제 해결 방법
서버에서/etc/php/7.3/apache2/php.ini를 수정합니다.

/etc/php/7.3/apache2/php.ini
(省略)
;default_charset = "UTF-8"
default_charset = "EUC-JP"
(省略)

좋은 웹페이지 즐겨찾기