로컬 네트워크 사용자가 내 WAMP 사이트에 액세스 할 수 있도록하는 방법은 무엇입니까?


119

우선이 주제에 대한 기사를 20 개 이상 읽었는데 그중 하나가 시나리오와 일치하지 않아 여러 번 과정을 망쳤습니다. 그래서 도움을 주시면 구체적인 시나리오를 제공하여 도움을 드리겠습니다.

노트북 또는 기타 장치는 무선 라우터를 통해 연결됩니다.

난 노력 했어:

  • 방화벽에서 포트 80을 활성화합니다. 아무 일도하지.
  • 실행 ping, ipconfig거기 시도 IPv4 주소, 액세스가 거부 나 버라이존 (내 ISP)에 저를 가지고, 라우터 설정 페이지로 이동합니다.
  • 시도한 구성 Apache는 엉망이었고 수많은 게시물에서 모든 인증 설정을 얻지 못했고 WAMP를 충돌시킨 유망한 것 중 하나를 시도하여 모든 문제를 겪고 다시 설치해야했습니다.

내가 정말로 달성하려고 시도한 것은 실제로 모든 사용자가 해당 무선 라우터에 연결하여 Win8 호스팅 WAMP 사이트에 액세스 할 수 있도록 허용하는 것입니다.

실제로 작동하도록 할 수있는 특정 단계가 있는지 궁금합니다.

Win8.1의 WAMP 2.4. 랩톱 호스트 로컬 사이트.

답변:


250

WAMPServer 3에서이 작업을 수행하는 방법은이 게시물의 끝을 참조하십시오.

WampServer 2.5 및 이전 버전의 경우

WAMPServer는 단일 시트 개발자 도구로 설계되었습니다. 따라서 Apache는 기본적으로 서버를 실행하는 PC (예 : localhost 또는 127.0.0.1 또는 :: 1)에서만 액세스를 허용하도록 구성됩니다.

그러나 Apache의 정식 버전이므로 사용중인 서버에 대한 약간의 지식 만 있으면됩니다.

간단한 방법은 'Put Online'wampmanager 메뉴 옵션을 사용하는 것입니다.

left click wampmanager icon -> Put Online

그러나 이것은 아파치에게 유니버스의 모든 IP 주소로부터의 연결을 받아 들일 수 있음을 알려줍니다 . 라우터에서 포트 80을 포트 포워딩하지 않았거나 앞으로 시도하지 않는 한 문제가되지 않습니다.

더 현명한 방법은 httpd.conf 파일을 편집하고 (다시 wampmanager 메뉴를 사용하여) Apache 액세스 보안을 수동으로 변경하는 것입니다.

left click wampmanager icon -> Apache -> httpd.conf

메모장에서 httpd.conf 파일이 시작됩니다.

이 파일의이 섹션을 찾으십시오.

<Directory "d:/wamp/www">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.4/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   AllowOverride FileInfo AuthConfig Limit
    #
    AllowOverride All

    #
    # Controls who can get stuff from this server.
    #
#    Require all granted
#   onlineoffline tag - don't remove
     Order Deny,Allow
     Deny from all
     Allow from 127.0.0.1
     Allow from ::1
     Allow from localhost
</Directory>

이제 로컬 네트워크 서브넷이 주소 범위 192.168.0.?을 사용한다고 가정합니다.

다음 줄 추가 Allow from localhost

Allow from 192.168.0

그러면 해당 서브넷의 모든 IP 주소에서 액세스 할 수 있음을 Apache에 알립니다. 물론 라우터가 192.168.0 범위를 사용하도록 설정되어 있는지 확인해야합니다.

명령 창에서이 명령을 입력 ipconfig하고 레이블 IPv4 Address.이 지정된 줄 을보고 거기에있는 주소의 처음 3 개 섹션을 사용하면됩니다.

예를 들어 다음과 같은 경우 :-

IPv4 Address. . . . . . . . . . . : 192.168.2.11

당신은

Allow from 192.168.2

Apache 2.4 사용자를위한 업데이트

물론 Apache 2.4를 사용하는 경우 이에 대한 구문이 변경되었습니다.

이 섹션을 모두 바꿔야합니다.

Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
Allow from localhost

이를 통해 새로운 Apache 2.4 구문 사용

Require local
Require ip 192.168.0

이것을 추가해서는 안됩니다 httpd.conf.

WAMPServer 3 이상

WAMPServer 3에는 기본적으로 정의 된 가상 호스트가 있습니다. 따라서 위의 제안은 작동하지 않습니다. 더 이상 httpd.conf파일 을 수정할 필요가 없습니다 . 찾은 그대로 그대로 두어야합니다.

대신 OFFLINE이 기능이 없어지고 더 이상 작동하지 않으므로 서버 를 그대로 두십시오. 이것이 Online/Offline메뉴가 선택 사항이되고 기본적으로 꺼진 이유 입니다.

이제 \wamp\bin\apache\apache{version}\conf\extra\httpd-vhosts.conf파일을 편집해야 합니다. WAMPServer3.0.6 이상에는 실제로 편집기에서이 파일을 여는 메뉴가 있습니다.

left click wampmanager -> Apache -> httpd-vhost.conf

httpd.conf파일 을 편집하는 항상 존재했던 것과 마찬가지입니다 .

자신의 가상 호스트를 추가하지 않은 경우 다음과 같이 표시됩니다.

#
# Virtual Hosts
#

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot c:/wamp/www
    <Directory  "c:/wamp/www/">
        Options +Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require local
    </Directory>
</VirtualHost>

이제 Require매개 변수를 필요에 맞게 변경하십시오. EG

당신이 액세스를 허용하려면 어디서든 교체 Require local와 함께

Require all granted

보다 구체적이고 안전하고 서브넷 내 IP 주소 만 허용하려면 이와 같은 액세스 권한을 추가하여 서브넷의 모든 PC를 허용하십시오.

Require local
Require ip 192.168.1

또는 더 구체적으로

Require local
Require ip 192.168.1.100
Require ip 192.168.1.101

1
하나의 문제. 다양한 로컬 사이트 (예 : 192.168.1.1/mysite1)가 있지만 휴대 전화에서 해당 웹 사이트에 액세스하려고하면 어떤 이유로 든 불완전한 것처럼 보입니다. 워드 프레스 사이트입니다. 그 이유를 알고 계십니까?
Ezeewei 2014-06-05

1
아, DB에서 링크가 localhost에 기반하기 때문에 문제를 발견했습니다! 이제 모든 작업을 완벽 : D
Ezeewei

그렇다면 네트워크의 모든 사용자가 WAMP 서버가 실행중인 장치에 액세스하도록하려면 어떻게해야합니까? 해당 구성에서 IP 주소를 어떻게 쓸 수 있습니까? DHCP를 사용하고 있습니다.
Mai

서브넷의 IP 주소를 의미하는 경우 위의 질문에서 말한 것처럼 IP 주소의
첫 번째

4
@RiggsFolly 나는 그렇게했지만 여전히 작동하지 않습니다. 403 금지.
gegobyte

66

방화벽을 통해 허용되는 Apache 프로세스 (httpd.exe) 가 있어야합니다 (권장).

또는 LAN에서 방화벽을 비활성화합니다 (테스트 용으로 권장되지 않음).

Wamp의 예 (Apache 활성화) :

  1. Wamp가 로컬로 게시되었는지 확인하고 계속하십시오.
  2. 액세스 제어 패널
  3. "방화벽"을 클릭합니다.
  4. "방화벽을 통해 앱 허용"을 클릭합니다.
  5. "일부 앱 허용"을 클릭합니다.
  6. C : /wamp64/bin/apache2/bin/httpd.exe를 찾아 선택합니다.
  7. Wamp 다시 시작

이제 네트워크의 다른 호스트에서 브라우저를 열고 IP (예 : 192.168.0.5)로 Apache 서버에 액세스합니다. ipconfig명령 프롬프트 에 입력하여 로컬 호스트 IP를 찾을 수 있습니다 .

효과가있다


있는지 확인 WAMP 서버가 실행되고 당신은 이미 "온라인을 넣어"와 그것을 사용할 설정
Matteus 바르보사

뿐만 아니라 몇 가지 문제를 해결할 수 있습니다 브라우저 캐시를 지 웁니다
Matteus 바르보사에게

3
방화벽 부분이 Windows 10에 도움이되었습니다. 감사합니다!
정말 멋진

이미 Windows 방화벽을 비활성화 했으므로 이것이 작동하지 않을 것이라고 생각했지만 Apache를 예외로 추가하면 실제로 작동했습니다. 감사!
Pawel

@Pawel 이것은 비활성화 된 방화벽이 예외 테이블을 무시하고 모든 것을 허용하기 때문에 의미가 없습니다. 바이러스 백신 소프트웨어가 비활성화되어 있는지 또는 깨끗한 테스트를 수행하기 위해 방화벽 계층도 비활성화되어 있는지 확인하십시오.
Matteus Barbosa

13
go to... 
C:\wamp\alias

alias 폴더 안에 phpmyadmin, phpsysinfo 등과 같은 파일이 있습니다.

각 파일을 열고 외부에서 phpmyadmin에 대한 액세스 권한을 부여하는 것과 같이 주석이 달린 일부 명령이 외부에서 액세스하는 것을 볼 수 있습니다.

Require local

by

Require all granted

4

마침내 나를 위해 일한 것은 여기에서 찾은 것입니다.

http://www.codeproject.com/Tips/395286/How-to-Access-WAMP-Server-in-LAN-or-WAN

요약:

  • 듣기 설정 httpd.conf:

    Listen 192.168.1.154:8081

  • 이 섹션에 모두에서 허용을 추가합니다.

    <Directory "cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory>

  • 인바운드 포트 규칙을 설정합니다. 나는 이것이 나에게 중요한 누락 부분이라고 생각합니다.

큰! 다음 단계는 모든 사람이 서버에 액세스 할 수 있도록 서버의 포트 (8081)를 여는 것입니다. 이것은 사용중인 OS에 따라 다릅니다. Windows Vista를 사용하는 것처럼 다음 단계를 따르십시오.

제어판 >> 시스템 및 보안 >> Windows 방화벽을 열고 "고급 설정"을 클릭 한 다음 왼쪽 패널에서 "인바운드 규칙"을 선택한 다음 "규칙 추가…"를 클릭합니다. 목록에서 "포트"를 옵션으로 선택하고 다음 화면에서 "TCP"프로토콜을 선택하고 "특정 로컬 포트"아래에 포트 번호 "8081"을 입력 한 다음 "다음"버튼을 클릭하고 "연결 허용"을 선택하고 그런 다음이 포트에 대한 일반 이름과 설명을 제공하고 완료를 클릭하십시오.

이제 PORT 열기도 완료되었습니다.

다음은 WAMP의 "모든 서비스 다시 시작"이며 LAN 또는 WAN에서 컴퓨터에 액세스합니다.


192.168.1.154는?
Charlesliam

1
다른 컴퓨터의 IP 주소 @Charlesliam
CodyBugstein

1

방금 이것을 겪었 기 때문에-조금 오래되었지만 내 솔루션을 제공하고 싶었습니다.

저는 가정용 라우터에 여러 대의 컴퓨터를 가지고 있고 저 자신을 위해 몇 가지 프로젝트를 진행하고 있습니다. 글쎄, 나는 그것이 내 모빌 장치에서 어떻게 보이는지보고 싶었습니다. 하지만 WAMP는 개발 시스템에서만 탈 수 있도록 설정되었습니다. 그래서 주변을 둘러보고이 기사와 다른 기사를 찾았습니다. 문제는-그들 중 누구도 나를 위해 일하지 않았습니다. 그래서 저는 이것을 스스로 알아 내야했습니다.

내 솔루션 :

먼저, HTTPD.CONF 파일에서 WAMP 서버에 액세스 할 수있는 장치 목록 끝에 한 줄을 추가해야합니다. 그래서 대신 :

#    Require all granted
#   onlineoffline tag - don't remove
     Order Deny,Allow
     Deny from all
     Allow from 127.0.0.1
     Allow from ::1
     Allow from localhost

그것을 만드십시오 :

#    Require all granted
#   onlineoffline tag - don't remove
     Order Deny,Allow
     Deny from all
     Allow from 127.0.0.1
     Allow from ::1
     Allow from localhost
     Allow from 192.168.78

위의 내용은 라우터에있는 모든 장치 ( '78'은이 솔루션에 대해 선택한 임의의 숫자 일뿐입니다. 라우터가 설정되어 있어야합니다. 따라서 192.168.1 또는 192.168.0 또는 심지어 192.168.254-라우터에서 찾아봐야합니다.) 이제 서버에 액세스 할 수 있습니다.

위의 내용은 처음에는 아무것도하지 않았습니다. 해야 할 일이 더 있습니다. 하지만 먼저-할 필요가없는 것. WAMP 설정을 오프라인에서 온라인으로 변경할 필요가 없습니다. 나를 위해-해당 설정을 변경해도 아무 효과가 없습니다. 이유를 알 수 없습니다. 그러니 원하는 경우 변경하십시오.하지만 변경할 필요가 없다고 생각합니다.

그렇다면 그 밖에 무엇을 변경해야합니까? 이 다음 변경을 위해 httpd.conf 파일의 처음으로 돌아 가야합니다. 정말 간단합니다. 다음에 새 줄을 추가해야합니다.

Listen Localhost:80

더하다

Listen 192.168.78.###:80

"###"은 서버가있는 IP입니다. 따라서 서버가 IP 번호 234에 있다고 가정합니다. 그러면 위의 명령은

Listen localhost:80
Listen 192.168.78.234:80

다시 말하지만 '78'은 제가 선택한 임의의 숫자입니다. 실제 IP 번호를 얻으려면 명령 창을 열고 입력해야합니다.

ipconfig/all

명령. TCP / IPv4 번호가 무엇인지 찾아서 그 번호 또는 TCP / IPv6으로 설정하십시오 (내부 라우터 세트에서는 일반적으로 IPv4 번호가 있음).

노트 : 명령 창을 표시하는 방법을 모르는 경우 시작을 클릭하고 "실행"옵션을 선택한 다음 대화 상자에 따옴표없이 "cmd.exe"를 입력합니다. 최신 시스템에서는 (모든 것을 계속 변경하기 때문에) 흰색 창 아이콘이나 원 또는 Bill Gates가 위아래로 점프 할 수 있습니다. 그것이 무엇이든-그것을 클릭하십시오.

위의 작업을 마치면 모든 서비스를 다시 시작하면 모든 것이 정상적으로 표시됩니다.

마지막으로-왜? Listen 명령을 변경해야하는 이유는 무엇입니까? 그것은 localhost와 관련이 있습니다. 'localhost'는 기본적으로 IP 주소가 아닌 127.0.0.1로 설정됩니다. 일반적으로 Windows의 system32 폴더에 있지만 Microsoft에서 다른 곳으로 옮긴 호스트 파일에서 찾을 수 있습니다. 온라인에서 어디에 있는지 찾아보고 살펴보십시오. 로컬 호스트 호스트 파일에 섹스, 포르노 등 사이트가 많이 표시되는 경우 제거해야합니다 (그게 당신의 일이 아니라면). RogueKiller (AdLice.com에서)를 사용하여 호스트 파일을 재설정 할 수 있으므로 시스템을 살펴볼 것을 제안합니다.

호스트 파일이 정상이라면 하나의 항목 만 포함해야하며 해당 항목은 localhost를 127.0.0.1로 설정하는 것입니다. 그렇기 때문에 httpd.conf 파일에서 localhost를 사용하면 모든 작업을 수행하고 서버 컴퓨터에서 모든 것을 볼 수 있습니다.

따라서 모험심을 느낀다면 호스트 파일을 변경하고 Listen 명령은 그대로 두거나 서버의 포트 80을 수신하도록 Listen 명령을 변경하십시오.

NEW (이 부분에 넣는 것을 잊었습니다)

TCP / IP 주소를 변경해야 할 수도 있습니다. (내가 이미 설정되어 있으므로이 작업을 수행 할 필요가 없습니다.) TCP / IP 주소가 정의 된 위치에 도달하는 방법을 OS를 찾아야합니다. Windows XP에서는 제어판-> 네트워크 연결이었습니다. 이것은 이후 OS에서 변경되었으므로 거기에 도달하는 방법을 찾아야합니다. 어쨌든 일단 거기에 무선 네트워크 연결 또는 로컬 영역 연결 (Windows)이 표시됩니다. 기본적으로 WIFI 또는 이더넷 케이블. 활성 상태이고 사용중인 것을 선택하십시오. Windows에서 마우스 오른쪽 버튼을 클릭하고 속성을 선택합니다. 대화 상자가 팝업되고 옆에 체크 박스 목록이 표시됩니다. TCP / IP 용을 찾으십시오. TCP / IP라는 메시지가 있어야합니다. v4. 그것을 선택하십시오. (없으면주의해서 진행해야합니다.) 속성 버튼을 클릭하면 다른 대화 상자가 나타납니다. "자동으로 IP 주소 받기"또는 "다음 IP 주소 사용"이 선택된 것으로 표시됩니다. 첫 번째 인 경우 두 번째로 변경해야합니다. 하지만 그렇게하기 전에-명령 창을 열고 ipcongfig / all 명령을 입력하면 바로 앞에 기본 게이트웨이가 무엇인지 알 수 있습니다. 그런 다음 "얻기 ..."에서 "사용 ..."으로 변경합니다. "IP 주소"라고 표시된 곳에 항상 사용하려는 IP 주소를 입력합니다. 위의 Listen 명령에 입력 한 IP 주소입니다. 두 번째 줄 (서브넷 마스크)은 일반적으로 255.255.255.0이며 마지막 숫자 (예 : 0) 만 변경됨을 의미합니다. 그때, 기본 게이트웨이에있는 명령 창을 다시 살펴 봅니다. 마지막으로, "Obtain ..."에서 "Use ..."로 변경하면 DNS 설정이 변경되었을 수 있습니다. DNS 설정을 다루는 섹션이 "사용 ..."으로 변경되고 비어 있으면 대답은 간단합니다. 해당 ipconfig / all 출력을보고 거기에서 DNS 설정을 찾아 제공된 필드에 입력하십시오. 완료되면 확인 버튼을 클릭 한 다음 두 번째 확인 버튼을 클릭합니다. 대화 상자가 닫히면 변경 사항을 적용하려면 시스템을 재부팅해야 할 수 있습니다. Google 또는 Stack Overflow로 이동하여 사용해보세요. 그래도 갈 수 있다면 재부팅 할 필요가 없습니다. 그렇지 않으면 재부팅하십시오. 생각해 내다! 나중에 인터넷에 접속할 수 없으면 돌아가서 모든 것을 "얻기 ..."옵션으로 재설정하십시오. 변경 한 후 더 이상 인터넷에 접속할 수없는 가장 가능성있는 이유는 사용하기로 선택한 TCP / IP 주소가 이미 라우터에서 사용 중이기 때문입니다. "하나만있을 수 있습니다"라는 말은 TCP / IP 주소에도 적용됩니다. 이것이 제가 항상 높은 100 개 숫자 또는 낮은 200 개 숫자를 선택하는 이유입니다. 대부분의 DHCP 설정은 50 개 미만의 숫자를 사용하기 때문입니다. 따라서 이러한 방식으로 다른 사람의 TCP / IP 번호와 충돌하지 않습니다.

이것이 내 문제를 해결 한 방법입니다.


이 작업을 수행 한 파일은 무엇입니까?
CodyBugstein

대부분의 변경 사항에 대한 Apache httpd.conf 파일과 Windows / System32 디렉토리 (XP의 경우)에있는 호스트 파일. 위의 업데이트가 필요합니다. 실제로 httpd.conf 파일에 여러 LISTEN 명령이있을 수 있습니다. 따라서 실제로 다음을 수행 할 수 있습니다. Listen localhost : 80 및 Listen 192.168.78.234:80 하나씩.
Mark Manning

TCP / IP 변경 사항에 대한 답변을 업데이트하기로 결정했습니다.
Mark Manning

1

WAMPServer 3에서는이 작업을 수행하지 않습니다. httpd.conf

대신에 \wamp\bin\apache\apache{version}\conf\extra\httpd-vhost.conf대해 정의 된 가상 호스트에 대해 동일한 변경을 편집 하고 수행하십시오.localhost

WAMPServer 3에는 가상 호스트가 사전 정의되어 있습니다. localhost


0

Wamp 3.0과 Apache 2.4에 대한 경험이 있습니다.

모든 작업이 끝나면 다음 단계를 수행하십시오.

1- nod32를 비활성화합니다.

2- 파일 에서 <VirtualHost *:80>차단 하려면 다음 줄을 추가 httpd-vhosts.conf하십시오.

Require ip 192.168.100 #client ip, allow 192.168.100.### ip's access

0

Windows를 사용하고 위의 모든 설명을 수행하면

네트워크 및 공유 센터를 확인할 수 있습니다.

네트워크 및 공유 센터-> 고급 공유 설정-> 집 또는 직장 프로필 변경

감사합니다!


-1

그것은 간단하고 정말 나를 위해 일했습니다.

run you wamp server => click right mouse button => and click on "put online"

그런 다음 관리자로 cmd를 열고이 명령 단어를 전달하십시오.

ipconfig => and press enter

그런 다음 많은 주소가 표시되고 첫 번째 주소 만 가져 오면 다음 예제와 같습니다. Adresse IPv4. . . . . . . . . . . . . .: 192.168.67.190 잘하셨습니다! , 그것은 당신이 로컬에서 wampserver에 접속하는 데 사용할 주소입니다.


-2

Wamp 서버를 온라인 상태로 만드십시오.여기에 이미지 설명 입력

그런 다음 제어판으로 이동 > 시스템 및 보안 > Windows 방화벽으로 Windows 방화벽을 끕니다.

이제 http://192.168.2.34/mysite 와 같이 wamp 서버가 설치된 컴퓨터의 네트워크 IP로 로컬 네트워크를 통해 다른 컴퓨터에서 wamp 서버에 액세스 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.