ひさびさにXAMPPをインストール


ひさびさに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: 9

カテゴリー: Windows, XAMPP パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です