web-dev-qa-db-ja.com

VirtualHostの追加に失敗する:アクセス禁止エラー403(XAMPP)(Windows 7)

Windows 7上でXAMPPインストールを実行しています。

Httpd-vhosts.confにVirtualHostを追加するとすぐに、「通常の」http://localhostと新しいdropbox.localの両方が機能しなくなります。

これが私のhttpd-vhosts.confに追加したものです。

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "E:/Documenten/Dropbox/Dropbox/dummy-htdocs"
    ServerName dropbox.local
    ServerAlias www.dropbox.local
    ErrorLog "logs/dropbox.local-error.log"
    CustomLog "logs/dropbox.local-access.log" combined
</VirtualHost>

それで私はどんな情報についても私のdropbox.local-error.logを調べました:

[Thu Feb 02 10:41:57 2012] [error] [client 127.0.0.1] client denied by server configuration: E:/Documenten/Dropbox/Dropbox/dummy-htdocs/

このエラーは追加することによって解決されるようです

<directory "E:/Documenten/Dropbox/Dropbox/dummy-htdocs">
     Allow from all
</directory>

しかし今、私はdropbox.local-error.logでこのエラーを得ます:

[Thu Feb 02 10:45:56 2012] [error] [client ::1] Directory index forbidden by Options directive: E:/Documenten/Dropbox/Dropbox/dummy-htdocs/

さらに、http://localhostにアクセスしようとすると、通常のerror.logにエラーが発生することはありませんが、アクセスしようとするとerror 403が発生します。

誰かが手を貸すことができます...それは私を怒らせます:S

編集:またhttpd.confには以下があります(私はそれが何度も言及したので、誰かがそれを言う前に):

<IfModule dir_module>
    DirectoryIndex index.php index.pl index.cgi index.asp index.shtml index.html index.htm \
                   default.php default.pl default.cgi default.asp default.shtml default.html default.htm \
                   home.php home.pl home.cgi home.asp home.shtml home.html home.htm
</IfModule>
146
Highmastdon

"directory"の内容をこれに変更したとき私は働いていました:

<Directory  "*YourLocation*">
Options All
AllowOverride All
Require all granted  
</Directory>
56
Imix

私(Windows 7のXAMPPも)にとって、これはうまくいったことです:

<Directory "C:\projects\myfolder\htdocs">`
   AllowOverride All
   Require all granted
   Options Indexes FollowSymLinks
</Directory>` 

403の原因となるのはこの行です。

Order allow,deny
9
lequebecois

私はWindows 7上でXAMPP 1.6.7を使っています--- この記事 私のために働きました。

httpd-vhosts.confC:/xampp/Apache/conf/extraファイルに次の行を追加しました。
私も行# NameVirtualHost *:80のコメントを外しました

<VirtualHost mysite.dev:80>
    DocumentRoot "C:/xampp/htdocs/mysite"
    ServerName mysite.dev
    ServerAlias mysite.dev
    <Directory "C:/xampp/htdocs/mysite">
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

Apacheを再起動してもまだ動作していませんでした。それから私はファイルC:/Windows/System32/drivers/etc/hostsを編集することによって記事で述べられたステップ9に従わなければなりませんでした。

# localhost name resolution is handled within DNS itself.
     127.0.0.1       localhost
     ::1             localhost
     127.0.0.1       mysite.dev  

それから私はhttp://mysite.dev働きました

8
Sithu

ありがとう、それはうまくいった!しかし私はこれを交換しました

AllowOverride AuthConfig Indexes

それと

AllowOverride All

さもなければ、.htaccessは働かなかった:私はRewriteEngineとエラーメッセージ "RewriteEngineはここで許されない"を得た。

5
Adam

上記の提案は私にはうまくいきませんでした。 http://butlerccwebdev.net/support/testingserver/vhosts-setup-win.html からのインスピレーションを使用して、私はそれを私のウィンドウ上で実行させました。

Httpd-vhosts.conf内のHTTPの場合

<Directory "D:/Projects">       
AllowOverride All
Require all granted
</Directory>

##Letzgrow
<VirtualHost *:80>
DocumentRoot "D:/Projects/letzgrow"
ServerName letz.dev
ServerAlias letz.dev    
</VirtualHost>

Httpd-ssl.conf内でHttps(Open SSL)を使用する場合

<Directory "D:/Projects">       
AllowOverride All
Require all granted
</Directory>

##Letzgrow
<VirtualHost *:443>
DocumentRoot "D:/Projects/letzgrow"
ServerName letz.dev
ServerAlias letz.dev    
</VirtualHost>

誰かに役立つことを願っています!

3
Rahul Gupta

非常に多くの変更や試行錯誤の後。にとって

SO: Windows 7
Xampp Version: XamppまたはXamppポータブル7.1.18
Installer: win32-7.1.18-0-VC14-installer

  • Httpd-xamppのような他のファイルを編集しないでください
  • Apacheを停止します
  • 次の場所にあるhttpd-vhosts.confに以下を追加します。**your_xampp_directory**\Apache\conf\extra\
  • 次の行の前にあるハッシュを削除します(約20行):NameVirtualHost *:80
  • ディレクトリを変更してコードを追加します。

      <VirtualHost *:80>
           DocumentRoot "F:/Web/htdocs/"
           ServerName localhost
    </VirtualHost>
      <VirtualHost *:80>
      DocumentRoot "F:/myapp/htdocs/"
      ServerName test1.localhost
      <Directory  "F:/myapp/htdocs/">
                Options All
                AllowOverride All
                Require all granted  
            </Directory>
      </VirtualHost>
    
  • (管理者アクセスで)あなたのHostファイル(Windows\System32\drivers\etcにありますが、以下のヒントで、全てのドメインに対して一つのloopback ipだけを編集します):

127.0.0.1 localhost 127.0.0.2 test1.localhost 127.0.0.3 test2.localhost毎回、2番目のブロックを繰り返します。最初のブロックは「デフォルト」の目的のためだけのメインブロックです。

0
MacGyver

Xampp 1.7.3を使用しています。ここからのインスピレーションを使用して: xampp 1.7.3アップグレード壊れた仮想ホストへのアクセスを禁止

代わりにhttpd-vhosts.conf<Directory> .. </Directory>を追加し、<Directory "D:/xampplite/cgi-bin"> .. </Directory>の直後にhttpd.confに追加します。

これが、httpd.confに追加したものです。

<Directory "D:/CofeeShop">
    AllowOverride All
    Options  All
    Order allow,deny
    Allow from all
</Directory>

そして、これが私がhttpd-vhosts.confに追加したものです。

<VirtualHost *:8001>
    ServerAdmin [email protected]
    DocumentRoot "D:/CofeeShop"
    ServerName localhost:8001
</VirtualHost>

私の設定を完了するためにhttpd.confにListen 8001も追加します。

それが役に立てば幸い

0
Tutompita

多くの人にとっては許可の問題ですが、私にとっては、送信しようとしていた形式の間違いによってエラーが発生したことがわかります。具体的に言うと、「action」の値の後に誤って「より大きい」記号を付けました。だから私はあなたがあなたのコードをもう一度見てみることをお勧めします。

0
Fred