nginx部署前端项目时location时root和alias配置
操作说明
1、nginx目录中html目录下放置green 前端项目
监听端口:8181
nginx配置文件配置location时使用root方式
# root 方式# 方式1 域名直接可访问到 即 localhost:8181#location / {# root html;# index green/index.html green/index.htm;#}# 方式2 域名直接可访问到 即 localhost:8181#location / {# root html/green/;# index index.html index.htm;#}# 方式2.1 域名直接可访问到 即 localhost:8181#location / {# root html/green;# index index.html index.htm;#}# 方式3 域名+/green 可访问到 即 localhost:8181/green#location /green/ {# root html;# index index.html index.htm;#}# 方式3.1 访问不到green下任务资源#location /green/ {# root html/green/;# index index.html index.htm;#}
以上三种 方式结论验证 用root属性指定的值是要加入到最终路径中的,匹配条件会拼接到路径中
即最终获取的静态页面路径为:域名 + root + 区配条件 + index
即找到 localhost:8181/html/green/index.html
备注:方式2 和方式2.1 用于验证 root 属性的值最后的 “/“为非必须,有没有最后一个”/” 都可以访问到
nginx配置文件配置location时使用alias方式
# alias 方式# 方式1 域名直接可访问到 即 localhost:8181#location / {# alias html/green/;# index index.html index.htm;#}# 方式1.1 访问不到green下任务资源#location / {# alias html/green;# index index.html index.htm;#}# 方式2 域名直接可访问到 即 localhost:8181#location / {# alias html/;# index green/index.html green/index.htm;#}# 方式3 域名直接可访问到 即 localhost:8181/green#location /green {# alias html/green/;# index index.html index.htm;#}# 方式3.1 域名直接可访问到 即 localhost:8181/green#location /green/ {# alias html/green/;# index index.html index.htm;#}
以上三种 方式结论验证 用alias属性指定的值,匹配条件不会拼接到路径中,会直接在alias属性的值下面去找资源
即最终获取的静态页面路径为:域名 + alias + index
即找到 localhost:8181/html/green/index.html
备注:方式1 和方式1.1 用于验证 alias 属性的值最后的 “/“为必须,没有最后一个”/” 访问不到
完整的nginx配置文件如下
#user nobody;
worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;
events {
worker_connections 1024;}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';
map $time_iso8601$logdate{'~^(?<ymd>\d{4}-\d{2}-\d{2})'$ymd;
default 'date-not-found';}
access_log logs/access-$logdate.log main;
sendfile on;#tcp_nopush on;#keepalive_timeout 0;
keepalive_timeout 65;#gzip on;
server {
listen 8181;
server_name localhost;
access_log logs/access-$logdate.log main;# root 方式# 方式1 域名直接可访问到 即 localhost:8181
location / {
root html;
index green/index.html green/index.htm;}# 方式2 域名直接可访问到 即 localhost:8181#location / {# root html/green/;# index index.html index.htm;#}# 方式2.1 域名直接可访问到 即 localhost:8181#location / {# root html/green;# index index.html index.htm;#}# 方式3 域名+/green 可访问到 即 localhost:8181/green#location /green/ {# root html;# index index.html index.htm;#}# 方式3.1 访问不到green下任务资源#location /green/ {# root html/green/;# index index.html index.htm;#}# 以上三种 方式结论验证 用root属性指定的值是要加入到最终路径中的,匹配条件会拼接到路径中# 即最终获取的静态页面路径为:域名 + root + 区配条件 + index# 即找到 localhost:8181/html/green/index.html# 备注:方式2 和方式2.1 用于验证 root 属性的值最后的 "/"为非必须,有没有最后一个"/" 都可以访问到# alias 方式# 方式1 域名直接可访问到 即 localhost:8181#location / {# alias html/green/;# index index.html index.htm;#}# 方式1.1 访问不到green下任务资源#location / {# alias html/green;# index index.html index.htm;#}# 方式2 域名直接可访问到 即 localhost:8181#location / {# alias html/;# index green/index.html green/index.htm;#}# 方式3 域名直接可访问到 即 localhost:8181/green#location /green {# alias html/green/;# index index.html index.htm;#}# 方式3.1 域名直接可访问到 即 localhost:8181/green#location /green/ {# alias html/green/;# index index.html index.htm;#}# 以上三种 方式结论验证 用alias属性指定的值,匹配条件不会拼接到路径中,会直接在alias属性的值下面去找资源# 即最终获取的静态页面路径为:域名 + alias + index# 即找到 localhost:8181/html/green/index.html# 备注:方式1 和方式1.1 用于验证 alias 属性的值最后的 "/"为必须,没有最后一个"/" 访问不到# 后台服务;
location /fdiagnose/ {
proxy_ignore_client_abort on;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:9090;}}}
本文转载自: https://blog.csdn.net/weixin_43171019/article/details/130088877
版权归原作者 阿松哥哥2018 所有, 如有侵权,请联系我们删除。
版权归原作者 阿松哥哥2018 所有, 如有侵权,请联系我们删除。