NGINX서버에서 디렉터리를 여러 개 두고 개발을 진행하고 싶을 경우 기본 /var/www/html 아래에 여러 개의 디렉터리를 두고 그중에 한 개의 디렉터리를 root디렉터리로 지정해 봅시다. 나머지 디렉터리는 서브프로젝트를 생성할 수 있는 디렉터리로 사용할 수 있습니다.
1. root가 될 디렉터리 폴더생성
sudo mkdir /var/www/html/alphonse
2. root접속 시 첫 화면이 될 index파일 생성
sudo echo '<!DOCTYPE html><html><head><title>Welcome to My Site!</title></head><body><h1>Hello, world!</h1></body></html>' | sudo tee /var/www/html/alphonse/index.html
3. ubuntu사용자에게 마스터권한 부여
웹 서버는 대부분 'www-data' 또는 'nginx'와 같은 특정 사용자로 실행되며, 이 사용자는 보통 웹 서버에 필요한 최소한의 권한만을 가집니다.
따라서 이 사용자가 해당 파일들에 접근할 수 있도록 하는 것이 중요합니다.
이를 위해 'alphonse' 폴더와 그 하위의 모든 파일과 폴더의 그룹을 웹 서버가 실행되는 사용자로 변경하고, 그룹에 읽기와 실행 권한을 부여할 수 있습니다.
다음의 명령어를 실행해보세요:
sudo chown -R ubuntu:www-data /var/www/html/alphonse
sudo chmod -R 750 /var/www/html/alphonse
이 명령어들은 'alphonse' 폴더와 그 하위의 모든 파일과 폴더의 그룹을 'www-data'로 변경하고,
폴더와 파일에 대해 소유자는 모든 권한을, 그룹은 읽기와 실행 권한을 가지도록 설정합니다.
이렇게 하면 웹 서버가 해당 파일들에 접근하는 데 문제가 없어질 것입니다.
3. root폴더경로 변경
sudo vi /etc/nginx/sites-available/default
server {
listen 80;
server_name 158.179.160.253;
root /var/www/html/alphonse; // <============ 이부분 경로를 변경
index index.nginx-debian.html index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
4. nginx 재부팅
sudo service nginx restart
5. 접속확인
'Linux' 카테고리의 다른 글
02. nginx서브도메인 등록하고 여러개의 사이트 생성하기 (2) | 2023.12.03 |
---|---|
01. 우분투서버ip 도메인 연결후 SSL/TLS 인증서 발급받기 (2) | 2023.12.03 |
리눅스에서 자신의 계정에 대한 권한 제대로 확인하고 변경하기 (3) | 2023.11.29 |
VSCODE에서 저장하면 원격FTP서버로 자동업로드 합니다. (2) | 2023.11.28 |
우분투 리눅스 nigex에 워드프레스 설치하기 (3) | 2023.11.26 |