XAMPP1.7.0のセキュリティ設定画面が403エラー

XAMPP 403エラー

VistaにXAMPP1.7.0をインストールし、セキュリティを設定しようとしたところ403エラーが出てしまいページを開くことができませんでした。

検索してみると国内外でちらほらと同じ症状をみつけました。でも、XPにインストールしたらすんなりページが開けたのでVista固有の問題でしょうか?もしかしたら、自分のVistaだけがそうなのかも!?。

ただ見たサイトの中では解決方法が書いてなかったのでこれはもう自分で調べるしかないと。

403エラーっていうのは「そのディレクトリやファイルにアクセスする権限がないよ」ってことのようですが、まずどこを原因でどう変更したらいいかさっぱりです。

でも、アクセス権がないってことはやっぱりサーバー側の問題ですよね。Apacheの設定をどこか変更したらうまくいくかも。それよりも一番の問題はApacheのことをほとんど知らないってことですけど・・・・。

でもでも、ひとつだけ気づいたことがあります。

「セキュリティ」ページのリンクがhttp://localhost/security/lang.php?jpになってるんですが、D:\xampp\htdocs\にはsecurityフォルダは存在してません。このフォルダはD:\xampp直下にあります。さらにlang.phpファイルはD\xampp\security\htdocs\にあります。

XAMPPではD:\xampp\htdocs\にlocalhostというドメインが割り当てられているので、たとえば、ブラウザからhttp://localhost/sample/にアクセスするということはD:\xampp\htdocs\sample\を見ることになります。

そのため、D:\xampp\直下にあるフォルダやファイルはブラウザからは見えないはずです。

でも「セキュリティ」ページへのリンクでは、http://localhost/security/にアクセスしたら、D:\xampp\security\htdocs\を参照するようになってるということになります。

そんなことできるのかな~と思いましたが、そういえばMovableTypeをマルチドメインで運用しようとしたときに覚えたシンボリックリンクを思い出しました。簡単にいうならWindowsのショートカットみたいなもの。デスクトップにショートカットがあって、実際のフォルダは違うところにあるみたいな。

たぶんここがポイント!。

そういう設定をしている箇所をApacheの設定から探せばいいはず・・・です。

Apacheの設定はD:\xampp\apache\conf\ディレクトリ以下にある拡張子がconfのファイルです。

そのなかからようやく見つけたのがD:\xampp\security\htdocs\extra\httpd-xampp.confの以下の部分。

Alias /security "D:/xampp/security/htdocs/"
<Directory "D:/xampp/security/htdocs">
    <IfModule php5_module>
        <Files "xamppsecurity.php">
            php_admin_flag safe_mode off
        </Files>
    </IfModule>
    Order deny,allow
    Deny from all
    Allow from localhost
</Directory>

Aliasディレクティブのところで気づきました。

Alias ディレクティブについて:Apacheドキュメント

ここでhttp://localhost/security/にアクセスしたらD:\xampp\security\htdocs\をみるようにしているようです。

でも、内容的にはおかしなところは無いように見えます。「Allow from localhost」でlocalhostからのアクセスのみ有効になってますし・・・。見当違いだったかな~。

しいて変更するとするとlocalhostとともに「127.0.0.1」も追加しようかなという程度。まあやらないよりはマシなのでとりあえず、保存→Apacheの再起動をしてみると・・・

Alias /security "D:/xampp/security/htdocs/"
<Directory "D:/xampp/security/htdocs">
    <IfModule php5_module>
        <Files "xamppsecurity.php">
            php_admin_flag safe_mode off
        </Files>
    </IfModule>
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1 localhost ← 「127.0.0.1」を追加
</Directory>

できた!!!!!。

メニューの「セキュリティ」からしっかりとページに移動することができました。現時点では理由はわかりませんが、偶然とはいえエラーをはかなくなったので大満足( ̄∇ ̄*)ゞ!

これでようやくセキュリティの設定ができます。

よかったよかった。

  • Pingback: XAMPPの403エラーのこといろいろ | PAOLOG()

  • Hiro

    はじめまして。
    私はプログラマーでもなくデザイナーでもない素人なのですが、色々有り、初めてMTOSを使おうと、色々試行錯誤しているモノです。
    色々なセットアップ?の最中にxamppのセキュリティの部分で同じエラーで困っていました。
    どうしていいか分からず本当に困っていたのですが、こちらのページを拝見し、同じようにやってみたら私も上手く行きました。
    ちなみに私のPCはXPです。
    本当に感謝しています。貴重な情報を、どうもありがとうございます。

    • http://scainto.net/ paon

      Hiroさん、はじめまして。
      この情報が役に立ったようでとても嬉しいです。
      はじめこのエラーに出くわしたときはググッても直接的な情報が見つからずに困ってたんですが、断片を拾い集めてこれにたどり着きました。結局はhttpd-xampp.confかWindowsのhostsファイルを修正するかのどちらかになると思います。
      XAMPPももう少しエラーが少なくなれば便利でいいソフトなんですけどね・・・。

  • Pingback: のんびり日記 - 前回の「セキュリティーに入れない・・・」の解決策発見!!()

  • Pingback: XAMPP設定など()

  • Pingback: » XAMPP設定などWeb Design Treatment()

そうのひとりごと

© 2017 PAOLOG