HimaJyunみなさん、Minecraftのマルチサーバに接続しようとした時に「現在、認証サーバがメンテナンス中です。」と言うエラーが出て接続出来ない事はありませんか?これはMojangSupportから確認出来るのですが、どうせなら自分のサイトに掲載したいです。この「認証サーバ」なる物の状態をPHPで取得してみようと思います。スポンサーリンクさて、この「現在、認証サーバがメンテナンス中です。」状態になると、復旧が遅い事もしばしば加えて、「普通は」どのマルチサーバにも接続出来ない。鯖缶の方の中にはこれが理由でユーザの方から、「接続出来ないんですけど!!」と言った怒りの問い合わせを受け取った方も居るかも知れません。自分の鯖が悪い訳では無いので、どうしようもありません。自分のホームページに掲載出来る様にしてみようと思います。すれば、ユーザの方にはそこを見てもらば良い訳ですからね。改良してみたで、どうするか?実は、Mojang鯖の状態はhttp://status.mojang.com/checkのURLから、jsonと言う形式で取得が出来るのです。実際にダウンロードしたファイルが以下の通りです。[{"minecraft.net":"green"},{"session.minecraft.net":"green"},{"account.mojang.com":"green"},{"auth.mojang.com":"green"},{"skins.minecraft.net":"green"},{"authserver.mojang.com":"green"},{"sessionserver.mojang.com":"green"},{"api.mojang.com":"green"},{"textures.minecraft.net":"green"}]ユニークな事に、サーバの状態は色で表されています。今回ダウンロードしたファイルは「green」なので全て正常です。これをPHPで判定して振り分ければ良いのです。※Ajax版も作成してみました、こちらの方がおススメです!!→AjaxでMojangサーバの状態を取得する実際にやってみると、行きたい所ですが、既にStackOverflowに投稿されて居ました。車輪の再発明は非合理的なので、これを使ってやれば良いのですがこのままではアクセスの度にMojang鯖にリクエストするので、ページの表示速度が遅くなります。実際に試してもらえば分かりますが、体感出来るくらいには違いがあります。これではいけません、やはりページの表示は早いに越した事はありません。DLしたファイルをキャッシュさせる様にしてみようと思います。minutes';//file_exists:ファイルの存在をチェックします。style="color:#'.$colour[0].'">'.$colour[1].'</span>です。//良く分からないのでunsetしておくと安全でしょう。strtotime('now');//書き込む。$data;}?>このPHPコードをサーバにアップロードして同じディレクトリに「cache」と言う名前のディレクトリを作成して下さい。「cache」ディレクトリはサーバソフトウェア(Apacheなど)が書き込み可能なパーミッション(775など)にして下さい。これで、取得したMojang鯖のステータスを5分間の間、キャッシュします。キャッシュが古い時の表示速度は変わりませんが、キャッシュがある間は表示速度が早くなります。minutes';の所を変更して下さい。strtotime関数で認識できる形であれば構いません。これでサーバのステータスをWebサイトから確認できるようになりますね!!ちなみに、Ajax版もあります。運営するサーバーのサイトにユーザーのスキンを表示したい、なんて需要はあるでしょう......続きを読む→JavaScriptを利用してpreタグをインデント出来る様にするpreタグは改行や空白をそのままに表示してくれる便利なタグです。Toolsが便利メールサーバを建ててたのですが、マザボが届かないので時間つぶしにWeb製作をして......続きを読む→テスト/開発用のシンプルWebサーバー作ったブログのアクセス数がジリジリと1割ずつくらい減っていて焦っています@HimaJy......続きを読む→ajaxでMojangサーバの状態を取得する少し前に、「PHPでMojangサーバの状態を取得する」と言う記事を投稿した気が......続きを読む→PREVLinuxで(とりあえず)Minecraftサーバを動かすNEXTSSDを換装しようとしたらOSから再インストールするハメになった話ナカのヒト:HimaJyun​散って美しいのは桜だけです、情報はまとまっていた方が美しいのです。