以下配置在 nginx.conf 修改
- 提供简单的静态服务
http{
events {
worker_connections 1024; ## Default: 1024 //必须设置事件
}
server{
listen 8080; // 不指定的情况下默认80
root /data/other; //在没有可匹配的location的路径时,将路径指向这里配置的路径
location / {
root /data/www;
}
location /images/ {
root /data;
}
}
}
以上配置的意思是 :
监听8080端口
当访问 http:localhost:8080/test.png时,代理到服务器文件系统/data/www路径下的 test.png
当访问 http:localhost:8080/images/test.png时,代理到服务器文件系统/data/images路径下的 test.png
如果去除以下配置
location / {
root /data/www;
}
则当访问 http:localhost:8080/test.png时,代理到服务器文件系统/data/other路径下的 test.png,server下root的作用和location 的 / 近似,不过优先级最低
- 设置一个简单的代理服务器
http{
events {
worker_connections 1024; ## Default: 1024 //必须设置事件
}
server {
listen 8080;
location / {
proxy_pass http://baidu.com;
}
}
}
当访问 http:localhost:8080 时,将会被代理到 http://baidu.com
关于proxy_pass 的相关配置
以下转自: https://www.cnblogs.com/jzxy/articles/12971199.html
在nginx中配置proxy_pass代理转发时,如果在proxy_pass后面的url加/,表示绝对根路径;如果没有/,表示相对路径,把匹配的路径部分也给代理走。假设下面四种情况分别用 http://192.168.1.1/proxy/test.html 进行访问
第一种:
location /proxy/ {
proxy_pass http://127.0.0.1/;
}
代理到URL:http://127.0.0.1/test.html
第二种(相对于第一种,最后少一个 / )
location /proxy/ {
proxy_pass http://127.0.0.1;
}
代理到URL:http://127.0.0.1/proxy/test.html
第三种:
location /proxy/ {
proxy_pass http://127.0.0.1/aaa/;
}
代理到URL:http://127.0.0.1/aaa/test.html
第四种(相对于第三种,最后少一个 / )
location /proxy/ {
proxy_pass http://127.0.0.1/aaa;
}
代理到URL:http://127.0.0.1/aaatest.html