
내 NGINX 서버에서 내 웹사이트의 각 부분에 대해 별도의 디렉터리를 정의하고 싶습니다.
domain.com/ --> /var/www/html/domain.com/website
domain.com/blog/ --> /var/www/html/domain.com/blog
domain.com/checkout/ --> /var/www/html/domain.com/checkout
domain.com/download/ --> /var/www/html/domain.com/download
domain.com/forum/ --> /var/www/html/domain.com/forum
시도한 다양한 구성이 작동하지 않고 404 오류가 발생합니다.
server {
location / {
root /var/www/html/domain.com/website;
}
location /blog {
root /var/www/html/domain.com/blog;
}
}
또는
server {
root /var/www/html/domain.com/website;
location /blog {
root /var/www/html/domain.com/blog;
}
}
또는
server {
root /var/www/html/domain.com/website;
location /blog/ {
alias /var/www/html/domain.com/blog;
}
}
또는
server {
root /var/www/html/domain.com/website;
location /blog/ {
alias /var/www/html/domain.com/blog/;
}
}
또는
server {
root /var/www/html/domain.com;
location / {
alias /var/www/html/domain.com/website/;
}
location /blog/ {
alias /var/www/html/domain.com/blog/;
}
}
또는
server {
location ~ ^/(?!(blog|checkout|download|forum))/ {
root /var/www/html/domain.com/website;
}
location /blog/ {
root /var/www/html/domain.com/blog;
}
}
답변1
이 구성으로 내 문제가 해결되었습니다.
server {
location / {
root /var/www/html/domain.com/website;
}
location ~ ^/(?!(blog|checkout|download|forum))/ {
root /var/www/html/domain.com/website;
}
location /blog/ {
alias /var/www/html/domain.com/blog/;
}
}