2013-05-22 3 views
5

Есть и другие вопросы, подобные этому, но не отвечайте на мою проблему.Wamp Apache - Разрешить localhost

Это по умолчанию httpd.conf:

<Directory "C:/wamp/www/"> 
    Options Indexes FollowSymLinks 
    AllowOverride all 
# onlineoffline tag - don't remove 
    Order Deny,Allow 
    Deny from all 
    Allow from 127.0.0.1 
</Directory> 

и это позволяет только 127.0.0.1, но я хочу, чтобы также localhost и 192.168.x.x (мой личный IP).

Ну, другие ответы: поместить Allow from all и раскомментировать в hosts файл в строке 127.0.0.1 localhost; но я читал, что это небезопасно или не рекомендуется.

Так что я попытался это:

<Directory "C:/wamp/www/"> 
    Options Indexes FollowSymLinks 
    AllowOverride all 
# onlineoffline tag - don't remove 
    Order Deny,Allow 
    Deny from all 
    Allow from 127.0.0.1 
    Allow from 192.168.x.x 
    Allow from localhost 
</Directory> 

Он работает для 192.168.x.x, но не для localhost (получает сообщение об ошибке:. 403 Forbidden, Вы не имеете разрешения на доступ/на этом сервере)

1) Как это можно сделать?

2) Возможно, для расторжения документа hosts необходимо указать строку 127.0.0.1 localhost?

3) Действительно ли это безопаснее, чем разрешение от всех?

ответ

0

1) Я не знаю, правилен ли ваш синтаксис Directory, поскольку я использую сервер ubuntu, но я всегда ставил строки, которые позволяют отдельным адресам до директивы «Отклонить от всех». Однако в документации апача вы можете увидеть примеры, где директивы находятся в том же порядке, как и в вашем коде

Link

Я ALSE указать маску подсети, что в случае отдельных IP-адресов должен быть 255.255.255.255, более мелкозернистого ограничения подсети.

Я всегда видел слова deny, разрешить в первой директиве в нижнем регистре, но поскольку вы используете Windows, возможно, это не обязательно. Код, который я хотел бы использовать это:

order deny,allow 
Allow from 127.0.0.1/255.255.255.255 
Allow from 192.168.x.x/255.255.255.255 
Allow from localhost/255.255.255.255 
Deny from all 

2) Да, как вы отрицаете все ходатайства, кроме тех, которые приходят из указанных IP-адресов

Related reference

+0

Пробовал свой код, но что-то не так, потому что Apache не может перезагрузиться. –

+0

Выполняли ли вы весь код? Я имею в виду ваши первые 4 строки, затем мой код, затем – alvaroreig

+0

. Да, я заменил свои последние 5 строк (до) кодом. В настоящее время я делаю это, раскомментируя строку '127.0.0.1 localhost' в файле' hosts', но я не знаю, хорошо ли это. –

8

Позволяет сохранить его простым, попробуйте этот

<Directory "C:/wamp/www/"> 
    Options Indexes FollowSymLinks 
    AllowOverride all 
    Order Deny,Allow 
    Deny from all 
    Allow from 127.0.0.1 ::1 localhost 192.168 
</Directory> 

:: 1 является IPV6 эквивалент 127.0.0.1

Я бы использовал первые 3 из квартилей 192.168.0 (при условии, что ваш третий квартиль равен 0)

2

Обновите свой httpd.conf, и вы сможете добраться до localhost на WAMP.

<Directory "C:/wamp/www/"> 
    Options Indexes FollowSymLinks 
    AllowOverride all 
    # onlineoffline tag - don't remove 
    Order Deny,Allow 
    Deny from all 
    Allow from 127.0.0.1 
    Allow from 192.168.x.x 

    Allow from ::1 
</Directory> 
1

Если вы используете Apache 2. затем используйте:

<Directory "C:/wamp/www/"> 
    Require all denied 
    Require ip 127.0.0.1 
    <If "%{HTTP_HOST} == 'localhost'"> 
    Require all granted 
    </If> 
</Directory> 
Смежные вопросы