2015-11-06 2 views
1

Я установил виртуальный хост для сайта на localhost, поэтому он будет перенаправлен на blog.local.dev, а не на local.dev/blog, и он отлично работает, но когда я пытаюсь сделать то же самое с локальным каталогом wamp/www, похоже, проблема. он показывает веб-сайт wamp со списком всех моих проектов, но когда я нажимаю на свои проекты, он говорит, что у меня нет доступа к нему (403 Запрещено).apache виртуальный хост для wamp/www localhost не работает

здесь мои хозяева

# Copyright (c) 1993-2009 Microsoft Corp. 
# 
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows. 
# 
# This file contains the mappings of IP addresses to host names. Each 
# entry should be kept on an individual line. The IP address should 
# be placed in the first column followed by the corresponding host name. 
# The IP address and the host name should be separated by at least one 
# space. 
# 
# Additionally, comments (such as these) may be inserted on individual 
# lines or following the machine name denoted by a '#' symbol. 
# 
# For example: 
# 
#  102.54.94.97  rhino.acme.com   # source server 
#  38.25.63.10  x.acme.com    # x client host 

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

127.0.0.1  localhost 
127.0.0.1  local.dev 
127.0.0.1  blog.local.dev 

ее мой HTTPD-vhosts.conf

# Virtual Hosts 
# 
# Required modules: mod_log_config 

# If you want to maintain multiple domains/hostnames on your 
# machine you can setup VirtualHost containers for them. Most configurations 
# use only name-based virtual hosts so the server doesn't need to worry about 
# IP addresses. This is indicated by the asterisks in the directives below. 
# 
# Please see the documentation at 
# <URL:http://httpd.apache.org/docs/2.4/vhosts/> 
# for further details before you try to setup virtual hosts. 
# 
# You may use the command line option '-S' to verify your virtual host 
# configuration. 

# 
# VirtualHost example: 
# Almost any Apache directive may go into a VirtualHost container. 
# The first VirtualHost section is used for all requests that do not 
# match a ServerName or ServerAlias in any <VirtualHost> block. 
# 
<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot "c:/Apache24/docs/dummy-host.example.com" 
    ServerName dummy-host.example.com 
    ServerAlias www.dummy-host.example.com 
    ErrorLog "logs/dummy-host.example.com-error.log" 
    CustomLog "logs/dummy-host.example.com-access.log" common 
</VirtualHost> 

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot "c:/Apache24/docs/dummy-host2.example.com" 
    ServerName dummy-host2.example.com 
    ErrorLog "logs/dummy-host2.example.com-error.log" 
    CustomLog "logs/dummy-host2.example.com-access.log" common 
</VirtualHost> 

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot "C:/wamp/www" 
    ServerName local.dev 
    ErrorLog "C:/wamp/www/error.log" 
    CustomLog "C:/wamp/www/access.log" common 
</VirtualHost> 

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot "C:/wamp/www/blog/public" 
    ServerName blog.local.dev 
    ErrorLog "C:/wamp/www/blog/logs/error.log" 
    CustomLog "C:/wamp/www/blog/logs/access.log" common 
</VirtualHost> 

Надежда любой может мне помочь.

+0

Ищите что-то в вашем конфигурационном файле apache, в котором говорится «Запретить заказ», «Разрешить» или подобное. Если вы его найдете, вы должны добавить 'Allow from localhost' и' Allow from 127.0.0.1', если их нет. –

+0

Не уверен, что он вступает в игру в этом случае, но Apache всегда будет использовать первый VirtualHost, который соответствует запросу, который иногда не тот, который вы ожидаете. Это может помочь включить все URL-адреса запросов, которые работают и не работают. –

ответ

1

Похоже, что вы пытаетесь что-то сделать неправильно. Похоже, вы пытаетесь настроить виртуальный хост для списка ваших проектов вместо одного виртуального хоста для каждого проекта.

Настройка один виртуальный хост для каждый проект по отдельности и проверьте .htaccess в соответствующем проекте, как хорошо, как ваши apache конфигурационных файлов.

0

Глядя на ваш conifg, кажется, local.dev просто перечисляет содержимое папки C:/wamp/www.

При нажатии на blog вы пытаетесь получить доступ: C:/wamp/www/blog, у которого нет index.php, и это даст вам 403, если у вас есть индексирование.

Это папка C:/wamp/www/blog/public, у которой есть index.php.

При нажатие на проекте (как blog), вы на самом деле не получить доступ к виртуальному хосту blog.local.dev но local.dev/blog

Могу ли я понять вас правильно?

2

К сожалению, нет английского

в httpd.conf файл раскомментировать Апач этой линии

IncludeOptional "c:/wamp/vhosts/*" 

в C: \ WAMP \ виртуальных доменов создать файл под названием anyname.conf и добавьте

#for localhost 
<VirtualHost *:80> 
    DocumentRoot "c:/wamp/www/" 
    ServerName localhost 
</VirtualHost> 

#for yourpage.localhost 
<VirtualHost *:80> 
    DocumentRoot "c:/wamp/www/yourfolder" 
    ServerName yourpage.localhost 
</VirtualHost> 

inths вам не нужно редактировать файлы хостов Windows, потому что ваш пользовательский локальный сайт будет субдоменом localhost, а wamp будет управлять собой