지난 포스팅에서 맥북(M1)에 APACHE + PHP + MYSQL을 설치하고 개발환경을 구축하였다.
하지만 여러 클라이언트를 개발, 관리하고 있다 보니 하나의 호스트(localhost)를 사용하기엔 너무 불편하다.
git을 이용해서 upload와 download를 반복하면서 사용할 수 도 있겠지만, 나는 옛날 개발자이다 보니 git이 익숙지 않을 뿐더러 바로바로 접근할 수 있는 환경이 필요했다. 그래서 맥북에 네임서버를 설치하고 가상호스트를 이용해서 여러 host로 여러 계정을 사용할 수 있도록 했다.
아직 개발환경이 갖춰져 있지 않다면 지난 포스팅을 보고 오길 바란다.
맥북(M1)에서 PHP / APACHE2 / MYSQL / phpmyadmin 설치하기.
맥북에서 내가 필요로 하는 개발환경을 갖추었다. 사실 온라인 서버를 운영하고 있는 나는 FTP환경에서 바로바로 작업하는 것을 선호하기 때문에 굳이 local 개발환경을 갖출 필요가 없었는데, 요
story-moon.tistory.com
가상호스트를 사용하기 위해서 brew를 이용해 가상호스트 dnsmasq를 설치했다.
brew install dnsmasq //네임서버 패키지 설치
이제 서버에서 사용할 도메인을 하나 설정해야 하는데 나는 나의 이니셜인 mk를 사용하기로 했다.
naver.mk, google.mk 등으로 접속 할 수 있다.
echo 'address=/.mk/127.0.0.1' > /opt/homebrew/etc/dnsmasq.conf
이제 네임서버 구동해 보자. 네임서버 패키지는 root 권한으로 실행해 주어야 한다.
sudo brew services start dnsmasq //패키지 실행
sudo mkdir -v /etc/resolver
sudo bash -c 'echo "nameserver 127.0.0.1" > /etc/resolver/mk' //환경설정
정상 작동하는지 확인해보자.
test.mk 호스트로 접속했더니 localhost로 정상적으로 접속되고 있다.
이제 APACHE에서 가상호스트를 등록한다.
vi /opt/homebrew/etc/httpd/httpd.conf
> LoadModule vhost_alias_module lib/httpd/modules/mod_vhost_alias.so //주석해제
> # Virtual hosts
> Include /opt/homebrew/etc/httpd/extra/httpd-vhosts.conf //주석해제
가상호스트 파일 등록
vi /opt/homebrew/etc/httpd/extra/httpd-vhosts.conf
//해당 파일에 있는 모든 내용을 지우고 아래 내용으로 설정하길 권장한다.
//여러 호스트 등록시 ServerName, 설정 디렉토리만 변경해서 추가해 주면된다.
<VirtualHost *:80>
ServerName test.mk
ServerAdmin webmaster@localhost
DocumentRoot "설정할 디렉토리 - web root"
<Directory "설정할 디렉토리 - web root">
Options FollowSymLinks MultiViews
AddType application/x-httpd-php .php
AllowOverride All
Order allow,deny
allow from all
Require all granted
</Directory>
# ErrorLog "/opt/homebrew/var/log/httpd/test.mk-error_log" //별도 로그 관리시 주석해제
# CustomLog "/opt/homebrew/var/log/httpd/test.mk-access_log" common //별도 로그 관리시 주석해제
</VirtualHost>
이제 APACHE를 재실행 하면 적용 된다.
brew services restart httpd
brew services list //실행 중인 패키지 확인
Safari를 열고 test.mk 로 접속하면 정상 작동하는 모습을 볼 수 있다.
혹시 권한설정 error 메세지가 출력된다면 httpd.conf 파일을 열어 다음과 같이 수정한다.
내가 관리할 계정들의 상위 폴더
예를 들어 /Users/myname/www 폴더 안에 계정 A, B, C... 등의 폴더를 만들어 관리한다면,
vi /opt/homebrew/etc/httpd/httpd.conf
//아래 내용을 추가한다.
<Directory "/Users/myname/www">
AllowOverride ALL
Require all granted
</Directory>
'컴퓨터 > 서버구축' 카테고리의 다른 글
[서버 구축] 우분투 Ubuntu에 ssh 설치하기 (0) | 2022.05.05 |
---|---|
우분투 Ubuntu 설치하기. (0) | 2022.05.05 |
맥북 개발환경에서 SSL 사용하기 (0) | 2022.03.23 |
macOS 아파치 설치 후 .php 확장자 없이 접속하기 (0) | 2022.03.22 |
맥북(M1)에서 PHP / APACHE2 / MYSQL / phpmyadmin 설치하기. (0) | 2022.03.21 |
댓글