NGINX - 루트 도메인이 다른 위치{} 슬러그

NGINX - 루트 도메인이 다른 위치{} 슬러그

현재 여러 위치 항목이 .conf포함된 파일이 있습니다. etc/nginx/sites-available이러한 위치 항목 중 일부는 특정 포트에 대한 역방향 프록시로 설정됩니다. 그러나 디렉터리만 가리키는 위치 항목을 추가하는 데 문제가 있습니다.

server {
listen 443 ssl;
server_name sub.domain.com www.sub.domain.com;
root /var/www/html;
charset utf-8;

access_log /var/log/nginx/sub.domain.com-access.log combined;
error_log /var/log/nginx/sub.domain.com.log error;

ssl_certificate /etc/letsencrypt/live/sub.domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/sub.domain.com/privkey.pem;

location /site1 {
    proxy_pass        http://127.0.0.1:7777;
    proxy_set_header  Host             $http_host;
    proxy_set_header  X-Real-IP        $remote_addr;
    proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
}

location /site2 {
    proxy_pass        http://127.0.0.1:8888;
    proxy_set_header  Host             $http_host;
    proxy_set_header  X-Real-IP        $remote_addr;
    proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
}

location /site3 {
            root /opt/site3;
            index index.html;
            allow all;
}

}

sub.domain.com/site3이제 제가 드릴 수 있는 것은 아무것도 없습니다 /opt/site3.

location {}프록시 역방향 항목을 나란히 사용하여 항목을 올바르게 사용하는 방법에 대한 도움을 주시면 대단히 감사하겠습니다! 감사해요.

답변1

하위 위치를 사용해 시도한다는 root것은 시도한다는 의미이며 $root$uri, 귀하의 경우에는 가 됩니다 /opt/site3/site3.

당신이 한 일을하고 root루트가 폴더가되도록 사용할 수 있습니다앞으로액세스하려는 폴더입니다. 그러나 당신은 그렇지 않습니다필요가서 이것을 해보세요.

alias /opt/site3;대안을 사용해 보십시오 .~해야 한다인덱스 필드를 설정하면 작동하고 올바른 위치에 액세스하며, 필요한 경우 try_files위치 블록에도 하나가 있습니다.

관련 정보