오늘 공부하다가 막혔던 부분이 있어서
도움이 될까 싶어 적어본다.

APACHE 웹 서버

아파치 HTTP 서버(Apache HTTP Server)는
아파치 소프트웨어 재단에서 관리하는 오픈 소스, 크로스 플랫폼 HTTP 웹 서버 소프트웨어다.
BSD, 리눅스 등 유닉스 계열 뿐 아니라 마이크로소프트 윈도우나 노벨 넷웨어
같은 기종에서도 무료로 운용할 수 있다고 한다. [출처 - 위키백과]

Mac 환경에서 Apache 웹서버를 사용해보려하다 오류가 발생했다.
오류를 얘기하기전 우선 설치 과정을 아래의 사이트를 참고했다.
[Apache 설치 방법 - 참고사이트]


homebrew를 이용한 설치방법이고
Mac 사용 유저라면 익히 알고 있을 것이다.

설치를 완료한다음
문제는 아파치 서버를 실행/종료 시키기위해서
sudo apachectl start 명령어와 sudo apachectl stop 명령어를
사용하게 되는데… AH00558 코드로된 알람이 발생했다.

image

AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using MacBook-Pro.local. Set the 'ServerName' directive globally to suppress this message

오류는 그렇다 쳐도, 기본 적으로 localhost에 접속하면
It works! 화면이 노출되지 않았다.
localhost:8080에 접속해야지만 화면이 노출되었고
설정을 바꿀 필요가 있다고 느껴졌다.


1). httpd.conf 파일 찾기

설정을 변경하기 위해서는 httpd.conf 파일을 수정해줘야한다.
해당 파일 경로를 찾기위해 여러가지 블로그를 찾아보았는데

사람마다 여러가지 경로로 수정을 하는걸 보았다.

/etc/apache2/httpd.conf
/private/etc/apache2/httpd.conf
와 같은 경로로 수정한 사람들도 있는 것 같다.
하지만 나와 같은 경우는 제대로 반영되지 않았고…

어떠한 차이인지는 아직 불분명하지만 내가 수정했던 경로는 아래와 같다.
📌/opt/homebrew/etc/httpd/httpd.conf📌
아마 homebrew를 통해 실행하는 것이기 때문이지 않을까? 라는 생각을 해본다.

httpd.conf 파일을 찾는데 처음에 애먹어서 시간을 많이 쓴 것 같다.

파일을 찾았으면 이제 shell에서 vi 편집기로 값을 수정해주면된다.

vi /opt/homebrew/etc/httpd/httpd.conf


2). Port 80 으로 변경하기

편집기를 열고 아래와 같은 Listen을 찾아준다.

image

아마 기본적으로 8080으로 설정되어있을 것이다.
#으로 주석처리를 해준다음, 아래에서 Listen 80으로 설정해주었다.


3). localhost로 변경 하기

image

위의 사진과 같이 ServerName을 localhost로 설정해주면 된다.


4). 결과 확인하기

아파치 웹서버 실행 명령어인
sudo apachectl start,sudo apachectl stop를 입력해도

image

더 이상 AH00558 오류가 발생하지 않는 모습이다.


아파치 웹서버를 실행 시켜놓은 상태에서

image

localhost를 입력하여 접속할 경우
이제 드디어 It works 화면을 볼 수 있게 된다 !!


5). html 파일 로딩하기

이 부분은 참고차 한번 적어본다.
아파치 웹서버에 내가 만든 html 파일을 적용 시키고싶을때

image

httpd.conf 파일에서 DocumentRoot를 수정해주면 html 파일을 사용할 수 있다.


image

예를 들어서 index.html 이라는 파일을 만들어 위의 경로에 파일을 두었을때


기존에 localhost:80 접속 시 It wroks!로 나왔던 화면이
내가 만든 화면으로 대체된 모습을 볼 수 있다.

image

이 화면은 테스트용으로 만든 화면이고
정상적으로 파일이 접속된 모습을 볼 수 있다.
이후 부터는 폴더경로를 만들어 html 파일에 접근하면된다.



혹시나 싶어 WindowOS 해결 방법 - 출처 mainia님 찾다가 좋은글인 것 같아 올려본다.
좀 더 자세한 내용을 보고싶다면 내가 참고한 해결 방법 - 출처 diduya님 포스팅을 봐도
좋은 해결법이될 것 같다.