【개요】
한 서버에 홈페이지를 여러개 운영하는 웹호스팅이다.
사용자 계정의 홈 안에 특정 디렉터리를 웹루트로 한다.
***사용자를 user01, 사이트는 user01.co.kr 이며 DNS는 아직 없는 경우를 가정한다.
【웹루트 설정】
계정별 웹루트 디렉터리를 public_html으로 일원화 한다.
mkdir /etc/skel/public_html
chmod 751 /etc/skel/public_html
***public_html이 계정을 추가할 때 자동으로 생성되도록 하는 거다.
【UserDir 사용】
vi /etc/httpd/conf.d/userdir.conf
...
#UserDir disabled
...
UserDir public_html
...
Options MultiViews SymLinksIfOwnerMatch IncludesNoExec
...
#UserDir disabled 줄을 주석한다.
UserDir public_html 줄의 주석을 해제한다.
Options 줄에서 Indexes를 제거한다.
【설정 적용】
systemctl restart httpd.service
【httpd_unified 불린 적용】
httpd_sys_content_t가 설정된 자원을 읽고, 쓸 수 있도록 한다.
setsebool -P httpd_unified 1
【사용자 추가】
adduser user01
passwd user01
chmod 701 /home/user01
【사이트 생성】
vi /etc/httpd/conf.d/user01.co.kr.conf
<VirtualHost *:80>
ServerAdmin webmaster@user01.co.kr
DocumentRoot /home/user01/public_html
ServerName user01.co.kr
ServerAlias www.user01.co.kr
ErrorLog logs/user01.co.kr-error_log
CustomLog logs/user01.co.kr-access_log combined
</VirtualHost>
【사이트 시작】
systemctl reload httpd.service
【기본 페이지 작성】
echo "user01.co.kr's site is works!" > /home/user01/public_html/index.html
【접속 테스트 설정】
먼저, 접속에 사용할 컴퓨터의 hosts 파일을 편집한다.
Windows 컴퓨터라면 메모장을 관리자 권한으로 실행한다.
***웹서버의 IP가 192.168.0.32라고 가정한다.
【접속 확인】
http://user01.co.kr
http://www.user01.co.kr
***혹시, 별로 권장하고 싶지 않지만 사정이 있어 IP로 기본 사이트도 열리게 하고 싶다면,
vi /etc/httpd/conf.d/localhost.conf
<VirtualHost *:80>
ServerName localhost
DocumentRoot /var/www/html
</VirtualHost>
systemctl reload httpd.service
'구축' 카테고리의 다른 글
Rocky 9.2 - PHP (0) | 2023.10.01 |
---|---|
Rocky 9.2 - Apache 가상호스트 - https 설정 (0) | 2023.09.30 |
Rocky 9.2 - Apache 가상호스트 (0) | 2023.09.26 |
Rocky 9.2 - Apache 설정 - 기본 (0) | 2023.09.26 |
Rocky 9.2 - Apache 설치 - 기초 (0) | 2023.09.26 |