ひさびさにXAMPPをインストールしたので、XAMPP をインストールする際の文字化け対策メモ
まずは、XAMPPをインストール
https://www.apachefriends.org/download.html
から以下のファイルをインストール(2015/10/17時点)
xampp-win32-5.6.12-0-VC11-installer.exe
5.6.12 / PHP 5.6.12
をインストール。
ただ、そのままだと、セキュリティー設定時に文字化けします。
http://localhost/security/lang.php?jp
C:¥xampp¥security¥htdocs¥lang¥en.php
UTF-8(UTF-8N)で保存
[メモ帳だとUTF-8 BOMなしで保存きないなのでTeraPadなどを使用しましょう]
C:¥xampp¥security¥htdocs¥lang¥jp.php
変更+UTF-8(UTF-8N)で保存
変更前
<?php
// ---------------------------------------------------------------------
// GLOBAL
// ---------------------------------------------------------------------
・・・・・・
$TEXT['navi-languages'] = "各国語";
↓
変更後
<?php
include "en.php";
// ---------------------------------------------------------------------
// GLOBAL
// ---------------------------------------------------------------------
$TEXT['navi-languages'] = "各国語";
$TEXT['navi-english'] = "英語";
$TEXT['navi-german'] = "ドイツ語";
$TEXT['navi-spanish'] = "スペイン語";
$TEXT['navi-french'] = "フランス語";
$TEXT['navi-italian'] = "イタリア語";
$TEXT['navi-dutch'] = "オランダ語";
$TEXT['navi-norwegian'] = "ノルウェー語 ";
$TEXT['navi-polish'] = "ポーランド語";
$TEXT['navi-portuguese'] = "ポルトガル語";
$TEXT['navi-slovenian'] = "スロベニア語";
$TEXT['navi-chinese'] = "中国語";
$TEXT['navi-japanese'] = "日本語";
C:¥xampp¥security¥htdocs¥navi.php
変更+UTF-8(UTF-8N)で保存
変更前
<a target=_parent class=n href="lang.php?zh"><?php print $TEXT['navi-chinese']; ?></a><p>
↓
変更後
<a target=_parent class=n href="lang.php?zh"><?php print $TEXT['navi-chinese']; ?></a><br>
<a target=_parent class=n href="lang.php?jp"><?php print $TEXT['navi-japanese']; ?></a><p>
localhost以外でhttp://<xamppインストールホスト>/security/などにアクセスした場合に一部文字化けしている
(「サーバーの障害と思われる場合は、ウェブ管理者までご連絡ください」の部分)
アクセス禁止!
新しいXAMPPのセキュリティコンセプト:
は、要求されたオブジェクトへのアクセスは、ローカルネットワークから入手可能です。
この設定は、ファイル"で設定することができますのhttpd - xampp.conf " 。
サーãƒãƒ¼ã®éšœå®³ã¨æ€ã‚ã‚Œã‚‹å ´åˆã¯ã€ã‚¦ã‚§ãƒ–管ç†è€…ã¾ã§ã”連絡ãã ã•ã„。
↓
サーバーの障害と思われる場合は、ウェブ管理者までご連絡ください。
変更対象は
C:\xampp\apache\error\XAMPP_FORBIDDEN.html.var
変更前
Content-language: ja
Content-type: text/html; charset=ISO-8859-1
変更後
Content-language: ja
Content-type: text/html; charset=UTF-8
ただ、このメッセージだとXAMPP使用しているのがまるみえなので、
C:\xampp\apache\error\HTTP_NOT_FOUND.html.var
を
C:\xampp\apache\error\XAMPP_FORBIDDEN.html.var
に上書きしてもいいかもしれません。
あと、/dashboard/以下もリモートから見えるとやばそうなので、リモートからは見えないようにしてみます。
Apache2を再起動すれば反映されます。
C:\xampp\apache\conf\extra\httpd-xampp.conf
変更前
#
# New XAMPP security concept
#
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>
↓
変更後
#
# New XAMPP security concept
#
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info|dashboard))">
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>
なお、ローカルLANからでも表示できるようにするには、以下のように書き換えればいいみたいです。
Require local
↓
Order deny,allow
Deny from all
Allow from 127.0.0.0/8
Allow from 192.168.1.0/24
修正したら、
http://localhost/security/lang.php?ja
にアクセスすれば、文字化けは解消していますので、
真ん中の方にあるリンク、http://localhost/security/xamppsecurity.phpにアクセスして、
ユーザーとパスワードセキュリティー設定をしておきます。
その他設定(PHP・MySQL)
C:\xampp\php\php.ini
;default_charset = "UTF-8"
date.timezone=Europe/Berlin
;mbstring.language = Japanese
;mbstring.internal_encoding = EUC-JP
;mbstring.http_input = auto
;mbstring.http_output = SJIS
;mbstring.encoding_translation = Off
;mbstring.detect_order = auto
;mbstring.substitute_character = none
;mbstring.func_overload = 0
↓
default_charset = UTF-8
;date.timezone=Europe/Berlin
date.timezone=Asia/Tokyo
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = UTF-8
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none
mbstring.func_overload = 0
C:\xampp\mysql\bin\my.ini
## UTF 8 Settings を探して、その下5行の文頭の # を外す。
init-connect=\’SET NAMES utf8\’ を init-connect=SET NAMES utf8 にする。
## UTF 8 Settings
init-connect=SET NAMES utf8
collation_server=utf8_unicode_ci
character_set_server=utf8
skip-character-set-client-handshake
character_sets-dir="C:/xampp/mysql/share/charsets"
また[client] [mysqldump] [mysql] を探してそれぞれ
default-character-set = utf8
を追加
また、Tomcatのweb-interfaceにログインするには
tomcat-users.xml の<tomcat-users>~</tomcat-users>の間に以下の行を追加すれば、admin/tomcatでアクセスできます。
(デフォルト設定は<!–~–>でコメント化されているので注意)
<role rolename=”manager-gui”/>
<role rolename=”admin-gui”/>
<user username=”admin” password=”tomcat” roles=”manager-gui,admin-gui”/>
おまけ
XAMPPのApacheの特殊パス
dashboard
http://localhost/dashboard/
XAMPPセキュリティ設定
http://localhost/security/
PHPInfo
http://localhost/dashboard/phpinfo.php
phpMyAdmin
http://localhost/phpmyadmin/
Apacheサーバステータス
http://localhost/server-status/
Apacheサーバ情報
http://localhost/server-info/
Views: 10