У меня есть установка XAMPP, работающая в Windows 7.
Как только я добавлю VirtualHost в httpd-vhosts.conf, ОБА "регулярный" 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
EDIT:
Также в 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>
Хорошо: Это то, что я сделал сейчас, и он решил:
Теперь мой httpd-vhosts.conf
выглядит следующим образом:
<VirtualHost dropbox.local:80>
DocumentRoot "E:/Documenten/Dropbox/Dropbox/dummy-htdocs"
ServerName dropbox.local
ErrorLog "logs/dropbox.local-error.log"
CustomLog "logs/dropbox.local-access.log" combined
<Directory "E:/Documenten/Dropbox/Dropbox/dummy-htdocs">
# AllowOverride All # Deprecated
# Order Allow,Deny # Deprecated
# Allow from all # Deprecated
# --New way of doing it
Require all granted
</Directory>
</VirtualHost>
Сначала я увидел, что необходимо установить параметры <Directory xx:xx>
. Поэтому я положил <Directory > [..] </Directory>
-part INSIDE <VirtualHost > [..] </VirtualHost>
.
После этого я добавил AllowOverride AuthConfig Indexes
в параметры <Directory>
.
Теперь http://localhost
также указывает на dropbox-virtualhost. Поэтому я добавил dropbox.local
в <VirtualHost *:80>
, что делает его как <VirtualHost dropbox.local:80>
НАКОНЕЦ оно работает: D!
Я счастливый человек!:):)
Я надеюсь, что кто-то другой сможет использовать эту информацию.
Require all granted
после Allow from all
заставило мою конфигурацию работать.
httpd-vhosts.conf
- это файл конфигурации для Apache. Apache «запускает» php-код. Скачайте и установите xampp
и измените конфигурацию, как указано выше.
Для меня это сработало, когда я изменил содержимое каталога:
<Directory "*YourLocation*">
Options All
AllowOverride All
Require all granted </Directory>
Я использую XAMPP 1.6.7 в Windows 7. Эта статья работала для меня.
Я добавил следующие строки в файле httpd-vhosts.conf
в C:/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 он все еще не работает.
Затем мне нужно было выполнить шаг 9, упомянутый в статье, отредактировав файл C:/Windows/System32/drivers/etc/hosts
.
# localhost name resolution is handled within DNS itself.
127.0.0.1 localhost
::1 localhost
127.0.0.1 mysite.dev
Затем я получил работу http://mysite.dev
Для меня (также XAMPP на Windows 7) это то, что сработало:
<Directory "C:\projects\myfolder\htdocs">`
AllowOverride All
Require all granted
Options Indexes FollowSymLinks
</Directory>`
Именно эта строка вызовет 403:
Order allow,deny
Require all granted
и Options Indexes FollowSymLinks
Спасибо, это сработало! Но я заменил это
AllowOverride AuthConfig Indexes
с этим
AllowOverride All
В противном случае .htaccess не работал: у меня возникли проблемы с RewriteEngine и сообщение об ошибке "RewriteEngine здесь не разрешено".
Выше предложения не сработали для меня. Я запустил его на своих окнах, используя вдохновение из http://butlerccwebdev.net/support/testingserver/vhosts-setup-win.html
Для Http внутри httpd-vhosts.conf
<Directory "D:/Projects">
AllowOverride All
Require all granted
</Directory>
##Letzgrow
<VirtualHost *:80>
DocumentRoot "D:/Projects/letzgrow"
ServerName letz.dev
ServerAlias letz.dev
</VirtualHost>
Для использования Https (Open SSL) внутри httpd-ssl.conf
<Directory "D:/Projects">
AllowOverride All
Require all granted
</Directory>
##Letzgrow
<VirtualHost *:443>
DocumentRoot "D:/Projects/letzgrow"
ServerName letz.dev
ServerAlias letz.dev
</VirtualHost>
Надеюсь, это поможет кому-то!
Для многих это проблема разрешения, но для меня оказывается, что ошибка была вызвана ошибкой в той форме, которую я пытался отправить. Чтобы быть конкретным, я случайно поставил знак "больше" после значения "действие". Поэтому я бы предложил вам второй раз взглянуть на ваш код.
Я использую xampp 1.7.3. Используя вдохновение отсюда: xampp 1.7.3 обновление запрещенных виртуальных хостов запрещено
INSTEAD OF add <Directory> .. </Directory>
в httpd-vhosts.conf, я добавляю его в httpd.conf сразу после <Directory "D:/xampplite/cgi-bin"> .. </Directory>
.
Вот что я добавляю в 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>
Я также добавляю Listen 8001
в httpd.conf для завершения настройки.
Надеюсь, что это поможет