就是希望 静态文件都是nginx处理 接口node来处理 配置大概是这样 server { listen 80; server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root /home/conmmon;
index index.html index.htm;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 80;
server_name www.hahaxx.com/test;
location /{
proxy_pass http://127.0.0.1:3000;
}
}
根目录我想指到 /home/conmmon
可以访问里面的静态资源
然后接口请求 我想通过访问127.0.0.1:3000 才处理接口
然后 server_name www.hahaxx.com/test
发现是不行的
大家是什么设置的啊 !!!
如果你用的是express,要去掉app.use express.static(path.join(__dirname, 'public'))
什么框架都没用 主要就是想试一下怎么配
server {
listen 80;
server_name www.hahaxx.com
location / {
root /home/conmmon;
index index.html index.htm;
}
location ^/test {
proxy_pass http://127.0.0.1:3000;
}
}
楼上正解 nginx匹配server的时候是先测试listen中的ip和port,然后测试server_name。如果没有匹配上server_name,会使用默认的server或者第一个匹配上的listen。 你的第二个server_name里的test是干嘛的。。
接口路径有前缀吗?没有的话可能需要用 try_files 指令
已经配成功了 多谢各位…
@wtcsy 可以分享一下完整的吗
@wang-weifeng 其实就是设置个代理 server { listen 80 default_server; server_name _; root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
}
location /app {
proxy_pass http://112.74.127.232:9000;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}