{{htmlmetatags>metatag-robots=()
metatag-keywords=(맥 웹서버,osx,맥 웹서버 설정)
metatag-description=(맥의 내장 웹서버를 설정하는 방법)
}}
관련 링크
| [[webapp:nginx:php_연동#디렉토리_리스팅_켜기|NGINX 디렉토리 리스팅 켜기]] |
====== 기본 실행 ======
아래 파일이 있다면, 우선 기본 설정만으로 실행 가능
/usr/sbin/apachectl
**/System/Library/LaunchDaemons/org.apache.httpd.plist** 요 데몬 파일을 켜고 끄는 스크립트.
=====시작=====
sudo apachectl start
=====종료=====
sudo apachectl stop
=====재시작=====
sudo apachectl restart
=====실행 확인=====
ps -ef | grep http
http 프로세스가 여러개 떠 있으면 실행 중. 뭐 아래 비슷하게 떠 있으면 오케이.
$ ps -ef | grep http
0 2248 1 0 3:27PM ?? 0:00.32 /usr/sbin/httpd -D FOREGROUND
70 2252 2248 0 3:27PM ?? 0:00.01 /usr/sbin/httpd -D FOREGROUND
70 2253 2248 0 3:27PM ?? 0:00.01 /usr/sbin/httpd -D FOREGROUND
70 2263 2248 0 3:33PM ?? 0:00.00 /usr/sbin/httpd -D FOREGROUND
웹 브라우져에서 **http://localhost** 를 입력하고 텍스트가 보이면 성공.
====== 웹 설정 파일 ======
설정파일
/etc/apache2/httpd.conf
기본문서위치
/Library/WebServer/Documents/
로그파일
* 에러: /private/var/log/apache2/error_log
* 접근: /private/var/log/apache2/access_log
====== 파일 목록 보이도록 : 디렉토리 리스팅 ======
폴더,파일 목록이 보이게 하고 싶다면
전체 설정, 개인 설정 옵션에서 아래 옵션 추가
Option +Indexes
**Directory** 설정의 예시
====== 유저 폴더로 웹 접속 ======
맥 OS 마다 설정이 달라서 버젼 명시 필요
===== 10.15.3 : Catalina =====
====유저 폴더에 관련된 모듈 다시 켜기 (주석 풀기)====
**httpd.conf**
* userdir_module 항목 주석 풀기 : **LoadModule userdir_module libexec/apache2/mod_userdir.so**
* 주석 풀기 : **Include /private/etc/apache2/extra/httpd-userdir.conf**
**extra/httpd-userdir.conf**
* **Include /private/etc/apache2/users/*.conf** 항목 되살리기
파일 추가: **users/
* 필요/불필요 옵션이 어떤건지 정확히는 모름.
====유저 폴더에 웹문서용 폴더 추가====
* **Sites** 라는 폴더 만들고 그 안에 index.html 파일 추가.
* 파일 내용은 확인용 글자 넣어두기.
====웹서버 유저를 그룹에 추가하기====
* 맥의 아파치 웹 서버는 유저, 그룹 모두 **_www**를 사용.
그룹을 제어하는 커맨드
* 특정 그룹에서 유저 목록 보기
sudo dscl . -read /Groups/staff GroupMembership
* 특정 그룹에 유저 추가
sudo dscl . -append /Groups/wheel GroupMembership
# 맥이라면 _www 가 http 서버의 오너
sudo dscl . -append /Groups/wheel GroupMembership _www
유저 폴더 ''<루트>/~UserID''를 사용하는 경우
* 유저의 기본 그룹인 **staff**에 **_www** 유저 아이디를 추가해줍니다.
# staff 그룹에 _www가 있는지 봅니다.
sudo dscl . -read /Groups/staff GroupMembership
# 없으면 추가해줍니다.
sudo dscl . append /Groups/staff GroupMembership _www
==== 테스트 ====
http://localhost/~
Alias /(유저이름)/ "/Users/(유저이름)/Sites/"
아래의 파일 중 한 곳에 위의 Alias 내용을 추가
* 여기 : ''/private/etc/apache2/users/(유저이름).conf''
* 또는 : ''/private/etc/apache2/httpd-userdir.conf''
====== php를 사용해보자 ======
* 참고 : [[http://melusina.tistory.com/entry/OSX%EB%A5%BC-%EC%9B%B9%EC%84%9C%EB%B2%84%EB%A1%9C-%EC%82%AC%EC%9A%A9%ED%95%B4%EB%B3%B4%EC%9E%90|osx를 웹서버로 사용해보자를 참고]]
php가 기본 설정으로는 꺼져 있다고 한다.
* /etc/apache2/httpd.conf 파일을 수정한다. 명령어 --> ''sudo vi /etc/apache2/httpd.conf''
* ''LoadModule php7_module libexec/apache2/libphp7.so'' 의 주석을 푼다.