Windows 7 컴퓨터에 WAMP 버전 2.1을 설치했습니다. 브라우저에서 localhost로 이동하면 WAMP 서버 페이지가 표시됩니다.
하지만 브라우저에서 내 IP를 검색 할 때 메시지가 표시됩니다.
403 금지됨 :이 서버에 액세스 할 수있는 권한이 없습니다.
어떤 제안?
phpmyadmin.conf'localhost / phpmyadmin'별칭에 대한 지시문이 포함되어 있습니다
Windows 7 컴퓨터에 WAMP 버전 2.1을 설치했습니다. 브라우저에서 localhost로 이동하면 WAMP 서버 페이지가 표시됩니다.
하지만 브라우저에서 내 IP를 검색 할 때 메시지가 표시됩니다.
403 금지됨 :이 서버에 액세스 할 수있는 권한이 없습니다.
어떤 제안?
phpmyadmin.conf'localhost / phpmyadmin'별칭에 대한 지시문이 포함되어 있습니다
답변:
Apache 서버에 대한 액세스 127.0.0.1는 httpd.conf(Apache의 구성 파일) 이외의 주소에서 금지됩니다 .
<Directory "c:/wamp/www/">
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
</Directory>
PHPMyAdmin 액세스에도 동일하게 적용되며 구성 파일은 phpmyadmin.conf다음과 같습니다.
<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
</Directory>
다음과 같이 모든 IP 주소에서 연결을 허용하도록 설정할 수 있습니다.
AllowOverride All
Order allow,deny
Allow from all
Require local로 Require all granted에서 의 httpd.conf 파일 내부 <Directory "c:/wamp/www/">태그는 모든 서비스를 다시 시작합니다
더 간단한 해결책을 찾았습니다 ...
아이콘이 녹색 이었지만 WAMP는 여전히 "온라인으로 설정"(아이콘을 왼쪽 클릭 할 때 메뉴의 마지막 항목)이어야합니다.
그 후 나는 정상적으로 액세스했습니다.
저에게 "로컬 필요"를 포함하면 오류 403을 해결하는 데 도움이되었습니다. 별칭 구성 파일은 다음과 같습니다.
Alias /mytest/ "C:/mytest/"
<Directory "C:/mytest/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all
Require local
</Directory>
Options Indexes FollowSymLinks MultiViews도 필요합니다
httpd.conf에서 권한을 변경하는 솔루션은 외부에서 WAMP 서버에 대한 액세스를 제공해도 괜찮다면 작동합니다.
그렇게하지 않으려면 "localhost"도메인이 127.0.0.1을 가리킴을 창에 알리기 만하면됩니다. 시스템 디렉토리에서 호스트 파일을 편집하여이를 수행 할 수 있습니다.
파일은 C : \ Windows \ System32 \ drivers \ etc \ hosts에 있습니다.
기본적으로 Windows 7은 다음과 함께 제공됩니다.
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
localhost에 대한 매핑의 주석 처리를 제거해야합니다.
# localhost name resolution is handled within DNS itself.
127.0.0.1 localhost
# ::1 localhost
참고 : 호스트 파일을 읽기 전용 파일로 편집 할 수 없습니다. 편집하려면 관리자 여야하며 파일을 다른 위치에 복사하고 편집 한 다음 etc 디렉토리에 다시 복사해야합니다.
호스트 파일의 변경을 권장하지 않습니다. httpd.conf 파일의 권한을 사용하십시오. 외부에서 서버에 액세스하지 않으려는 경우에만 호스트 파일 방식을 사용하십시오.
내가 알아 낸 또 다른 사실은 네트워크 어댑터가 IPV6을 사용하는 경우 127.0.0.1로 표시되지 않고 :: 1로 표시된다는 것입니다.
내가 한 일은 다음과 같습니다.
<Directory "c:/wamp/www/">
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
</Directory>
PHPMyAdmin 액세스에도 동일하게 적용되며 구성 파일은 phpmyadmin.conf입니다.
<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
</Directory>
더미 요소를 제거해야합니다. httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
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 webmaster@dummy-host2.example.com
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>
Wamp 3.1.3 및 Apache 2.4의 경우 httpd-vhosts.conf 파일에서 한 줄만 변경하면됩니다.
그런 다음 다른 컴퓨터에서 아파치 서버에 액세스 할 수있었습니다.
https://www.youtube.com/watch?v=Sy_f6wBGnjI 동영상에 크레딧을주세요.
위의 구성을 시도했지만 WAMP Apache 2.4.2 구성에서만 작동했습니다. Windows 호스트 파일에 명명 된 도메인이없는 다중 루트 사이트의 경우 http://locahost:8080, http://localhost:8081, http://localhost:8082다음 구성을 사용하십시오.
#ServerName localhost:80
ServerName localhost
Listen 8080
Listen 8081
Listen 8082
#.....
<VirtualHost *:8080>
DocumentRoot "c:\www"
ServerName localhost
<Directory "c:/www/">
Options Indexes FollowSymLinks
AllowOverride all
Require local
</Directory>
</VirtualHost>
<VirtualHost *:8081>
DocumentRoot "C:\www\directory abc\svn_abc\trunk\httpdocs"
ServerName localhost
<Directory "C:\www\directory abc\svn_abc\trunk\httpdocs">
Options Indexes FollowSymLinks
AllowOverride all
Require local
</Directory>
</VirtualHost>
#<VirtualHost *:8082></VirtualHost>.......
이것을 알아내는 데 영원히 걸렸습니다.
C : \ wamp \ bin \ apache \ apache2.4.9 \ conf \ extra \ httpd-vhosts.conf
이 파일에는 다음과 같은 여러 예제 가상 호스트 파일이 있습니다.
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
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 webmaster@dummy-host2.example.com
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 serveradmin@host.com
DocumentRoot "C:\wamp\www"
ServerName localhost
</VirtualHost>
다른 오리가 일렬로 있는지 확인해야하지만 작동하는 솔루션이 있습니다.
안녕하세요 두 가지 솔루션이 있습니다.
텍스트 파일 (httpd.conf)에서 포트 80을 81로 변경하고 127.0.0.1:81을 클릭합니다.
네트워크 설정 변경 제어판-네트워크 및 인터넷-네트워크 및 공유 센터로 이동
클릭-> 로컬 영역 연결 선택-> 속성 -allow other ..... 및 --- allo other .....
놀랍게도 DocumentRoot (및 <Directory>와 같은 관련) 경로의 대괄호로 인해 오류 403이 발생할 수도 있습니다.
DocumentRoot "P:/TRY/web/fatfree/from_github/fatfree-master[bang]" 403으로 실패했지만DocumentRoot "P:/TRY/web/fatfree/from_github/fatfree-master" 잘 작동했습니다.(나는 아파치 경로 이스케이프를 알아내는 데 신경 쓰지 않고 경로를 대신 이름을 바꿨습니다. 누구든지 알고 있다면 댓글을 환영합니다.)
내 해결책은 인코딩 된 파일의 인코딩을 비활성화하는 것이 었습니다 (이 파일은 Windows에서 녹색 임). MAC 컴퓨터에서이 파일을 받았으며 기본적으로 암호화되었습니다.
Ive select these files > right click > properities > general tab > andvanced > uncheck encrypt files...
그리고 짜잔 작동합니다.
또한 Apache 2,4에서는 httpd-vhosts.conf를 포함하기로 결정한 경우이를 conf의 디렉토리 지시문에 추가해야 할 수 있습니다.
기본적으로 C : \에 wamp를 설치할 수 있지만 웹 개발을 다른 위치에 배포하도록 선택할 수 있습니다.
vhosts.conf 내에서이 작업을 수행하려면 다음 지시문을 추가 할 수 있습니다.
<Directory "e:/websites">
Options Indexes FollowSymLinks MultiViews
DirectoryIndex index.php
AllowOverride All
<IfDefine APACHE24>
Require local
</IfDefine>
<IfDefine !APACHE24>
Order Deny,Allow
Allow from all
Allow from localhost ::1 127.0.0.1
</IfDefine>
</Directory>
127.0.0.1는httpd.conf(Apache의 구성 파일) 이외의 주소에서 금지됩니다.