はぴすぷ

2015年7月からXAMPPの導入手順が分かりにくくなりました!対応の方法

      2015/11/11

SS_0437

とても簡単にWebの開発環境を用意してくれる便利なXAMPPですが、2015年7月23日のアップデートにより、今までお馴染みだった上の画面がなくなります。
本家:New XAMPP with PHP 5.5.27 & 5.6.11 versions

ちらほらと困った!どうなってんの!という声が上がっているようです。
誰も解決策書いてないし、ちょうどお手軽にローカルでWordPress動かそうと、XAMPP入れようとしていたのでさっそく解決策を書くことにしました。

5.6.11のインストール手順書きました。
XAMPPで簡単にWeb開発環境(Apache・MySQL・PHP)を整える設定手順

2015/11/11追記:5.6.14で更に余計な変更が入りました…。
【XAMPP】2015年10月から導入手順がまた難解に!対応の方法!securityが無い!

スポンサーリンク

何で以前のXAMPPトップページがなくなったのか

以前のトップページが削除された理由はセキュリティ上の問題です。

一例ですが、初心者用の入門ソフトなので、以下のようなことが頻発してたと思います。

  • XAMPP入れて頑張ってみようと思ったけど、やっぱ俺にはわかんねぇやと、そのまま常駐起動の状態で放置
  • あまり分かってない人たちが書いた導入手順を元に、セキュリティ対策何もせずにそのまま自宅サーバー運用開始

簡単=セキュリティが弱いなのはもちろんで、初心者向けのソフトだしこんなものかなと思っていましたが、さすがにこれは酷いだろとテコが入った感じです。
コミュニティ:New Welcome XAMPP and docs

ここでも、前のトップページどこいった/(^o^)\とお困りの声がw

今はどうなっているのか

http://localhost
にアクセスすると、
http://localhost/dashboard/
へリダイレクトされて以下のApache Friendsというページが表示されます。

SS_0439

日本語化するには、URLの後ろに「jp」を足します。
http://localhost/dashboard/jp
トップページは少しだけ翻訳されていましたが、他のFAQsやHOW-TO Guidesは未着手でGoogle先生に頑張ってもらうしかない状態です。
翻訳への協力を募っていました。協力しようかと思ったけど英語分からなかった/(^o^)\

translate.apachefriends.org で XAMPP の翻訳にご協力ください

XAMPP を他のコミュニティーメンバーのために翻訳するのをお手伝いいただけませんか?XAMPP を他の言語に翻訳するお手伝いをしてくださる方を探しています。弊社は特別サイト translate.apachefriends.org を設け、ここでユーザーの皆さんに翻訳してもらっています。

以前のトップページはどこに?

http://localhost/xampp/はもうありません。
ディレクトリは残っていますがwebページを表示するためのファイルやサンプルプログラムは全て削除されています。
これでは分かりませんでぇ…(‘A`)

対応方法

FAQsを読むことである程度は分かります。メンテされていないので以前のトップページの説明が残っていたりしていました。

特に重要だったのが「Is XAMPP production ready?」の項目

XAMPPの本番環境に向けた準備は?

英語分からないので、Google先生に助けてもらいつつ一部抜粋

XAMPPで不足しているセキュリティのリスト:

  • MySQLの管理者(root)にパスワードがありません。
  • MySQLのDaemonが、ネットワーク経由でアクセス可能です。
  • ProFTPDがユーザ「daemon」でパスワード「lampp」を使用しています。
  • PhpMyAdminがネットワーク経由でアクセス可能です。
  • XAMPPのdemopageは、ネットワークを介してアクセス可能です。
  • MercuryとFileZillaのデフォルトのユーザーが知られています。

あなたは、インターネットからあなたのXAMPPを手元に用意しておきたい場合は、いくつかの問題を修正することができ、次のURIに行く必要があります。

http://localhost/security/

セキュリティコンソールを使用すると、MySQLユーザー「root」とphpMyAdminのためのパスワードを設定することができます。また、XAMPPのdemopagesの認証を有効にすることができます。

このWebベースのツールは、追加のセキュリティ問題を修正していません!特に、FileZillaのFTPサーバとあなた自身を保護する必要がありマーキュリーメールサーバ。

要は、リンクはなくなったけど以前からある、http://localhost/security/でセキュリティちゃんと強化してねと。
うーん、何か分かりづらくなっただけで、逆効果な気が…。

http://localhost/security/でセキュリティを強化する

2015/11/11追記:5.6.14の変更でsecurityが無くなっています。こちらも参考にしてみて下さい。
【XAMPP】2015年10月から導入手順がまた難解に!対応の方法!securityが無い!

早速http://localhost/security/にアクセスする。
http://localhost/security/splash.phpにリダイレクトされて、言語選択画面が出る。

SS_0441_0

日本語どこいった/(^o^)\

セキュリティページの構造解説

ちなみに、ここの各言語のリンク先は、http://localhost/security/lang.php?[言語]になっていてます。
選択することでlang.phpが、後ろに付いている言語の文字列(jpenなど)のみが書かれた、lang.tmpというファイルを作ります。
その後は、このファイルの有無で初期画面splash.phpindex.phpを表示するか、またどの言語で表示するかを決めています。

日本語化する方法

日本語を指定する

上述の通りなので簡単に日本語化するには、以下にアクセスします。
http://localhost/security/lang.php?jp

もちろん、splash.phpに日本語のリンクを追加してやってもいいし、jpと書いたlang.tmpファイルを作ってもいいです。

これで、日本語が指定されます。表示は文字化けにエラーと酷い有様です。

SS_0443

文字化けとエラーの対処

文字化けの原因は、ファイルの文字コードがSJISになっているせいです。
エラーの原因は、翻訳文字列の定義が日本語の翻訳ファイルjp.phpに存在しないからです。

どちらも簡単に対応する方法ですが、恐らく一番メンテされているだろう英語の翻訳ファイル「en.php」の文字コードをUTF8形式に変換します。

次に日本語翻訳ファイル「jp.php」も同じようにUTF8形式に変換した後、足りない部分を補う目的でファイルの一番最初で「en.php」を取り込むようにします。

<?php
	// ↓こいつを足す
	include "en.php";
	// ---------------------------------------------------------------------
	// GLOBAL
	// ---------------------------------------------------------------------

これで画面を更新すれば、エラーもなく、翻訳テキストが用意されている部分は日本語で表示されます。

SS_0444

後は真ん中の方にあるリンク、http://localhost/security/xamppsecurity.phpにアクセスして、ユーザーとパスワードをちゃんと設定してあげます。

SS_0445

設定出来れば、青色に変わります。

SS_0452

終わりに

初めてWeb系の開発しようとしてXAMPPに触れたのが約5年前。あの時はまさか自分でプログラムが書けるなんて思いもしなかったので楽しかったなぁ。

プログラムを始める時に一番困るのが環境構築なので、手順が複雑になるのはちょっと残念です。とは言え、セキュリティも大切なので今後どんどん、めんどくさくなっていくことでしょう。

今困ってる人たちの助けになれば幸いです。是非こちらの世界へ踏み入れて見て下さい。

Hello world

 - PHP, Webサイト構築, XAMPP, フリーソフト