{"id":208772,"date":"2020-11-22T23:11:04","date_gmt":"2020-11-22T15:11:04","guid":{"rendered":"http:\/\/4563.org\/?p=208772"},"modified":"2020-11-22T23:11:04","modified_gmt":"2020-11-22T15:11:04","slug":"%e8%af%b7%e6%95%99-v2-%e5%a4%a7%e4%bd%ac%e4%bb%ac%e4%bb%a5%e4%b8%8b-nginx-%e5%8f%8d%e5%90%91%e4%bb%a3%e7%90%86%e9%85%8d%e7%bd%ae%e6%8a%a5%e9%94%99%e9%97%ae%e9%a2%98","status":"publish","type":"post","link":"http:\/\/4563.org\/?p=208772","title":{"rendered":"\u8bf7\u6559 v2 \u5927\u4f6c\u4eec\u4ee5\u4e0b nginx \u53cd\u5411\u4ee3\u7406\u914d\u7f6e\u62a5\u9519\u95ee\u9898"},"content":{"rendered":"<div>\n<div>\n<div>\n<h1>                  \u8bf7\u6559 v2 \u5927\u4f6c\u4eec\u4ee5\u4e0b nginx \u53cd\u5411\u4ee3\u7406\u914d\u7f6e\u62a5\u9519\u95ee\u9898               <\/h1>\n<p> <\/p>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : qwer666df <\/span>  <span><i><\/i> 4<\/span> <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div isfirst=\"1\"> <\/p>\n<p>\u9700\u6c42\u60f3\u7684\u662f,\u5728\u8bbf\u95ee test.cc\/sss \u7684\u65f6\u5019\u8f6c\u5230 <em>http:\/\/localhost:8001<\/em> \u5730\u5740<\/p>\n<p>\u5176\u4e2d:<\/p>\n<ul>\n<li>http:\/\/127.0.0.1:8001\/sss\/list \u8fd9\u4e2a\u5730\u5740\u662f\u53ef\u4ee5\u6b63\u5e38\u8bbf\u95ee\u7684<\/li>\n<li>\u9632\u706b\u5899\u5df2\u7ecf\u5173\u95ed<\/li>\n<li>\u662f Python \u9879\u76ee, \u4e0d\u662f php \u9879\u76ee, , \u56e0\u4e3a Google \u4e86\u4e00\u5708\u53d1\u73b0\u90fd\u662f\u8bf4 php-fpm+nginx \u7684\u95ee\u9898<\/li>\n<\/ul>\n<p>\u62a5\u9519\u4fe1\u606f<\/p>\n<pre><code>2020\/11\/25 13:43:56 [error] 7#7: *3 connect() failed (111: Connection refused) while connecting to upstream, client: 172.19.0.1, server: test.cc, request: \"GET \/sss\/list HTTP\/1.1\", upstream: \"http:\/\/127.0.0.1:8001\/sss\/list\", host: \"test.cc\"  <\/code><\/pre>\n<p>nginx.conf<\/p>\n<pre><code>upstream websocket {  ip_hash;  server 127.0.0.1:3101 weight=1 max_fails=2 fail_timeout=30s;  server 127.0.0.1:3102 weight=1 max_fails=2 fail_timeout=30s;  server 127.0.0.1:3103 weight=1 max_fails=2 fail_timeout=30s; }  server {  listen 80;  server_name test.cc;  location ~ \/sss\/ {   proxy_pass http:\/\/localhost:8001;  } } <\/code><\/pre>\n<\/p><\/div>\n<div> <b>\u5927\u4f6c\u6709\u8a71\u8aaa<\/b> (<span>20<\/span>)        <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<ul>\n<li data-pid=\"4342578\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : lrvinye <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u4f60\u8fd9\u4e2a\u5199\u6cd5\uff0c\u8bbf\u95ee test.cc\/sss \u5b9e\u9645\u4e0a\u4f1a\u53cd\u4ee3\u5230 localist:8001\/sss                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342579\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : kidlj <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             SELinux \u5173\u6389\u4e86\u5417\uff1f<\/p>\n<p># sestatus \u67e5\u770b\u3002                                                            <\/p><\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342580\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : lpts007 <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             postman \u76f4\u63a5\u7ed9 8001 \u53d1\u4e2a\u8bf7\u6c42\u8bd5\u8bd5\uff0cheaders \u7684 Host \u8bbe\u7f6e\u4e3a test.cc                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342581\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : 37Y37 <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             server \u6bb5\u8fd8\u6709\u5176\u4ed6 location \u89c4\u5219\u5e72\u6270\u4e86\u5427                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342582\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : ik <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u5173\u95ed selinux <\/p>\n<p>location ~ \/sss\/ \u6539\u6210 location ~ \/sss                                                            <\/p><\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342583\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : ik <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @ik \u5148\u5173 selinux \u770b\u770b\u5427                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342584\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : beichenhpy <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u5efa\u8bae\u4f7f\u7528\u4e8c\u7ea7\u57df\u540d\u3002\u3002                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342585\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : beichenhpy <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u6216\u8005\u8fd9\u6837\u8bd5\u8bd5<br \/>location ^~\/sss\/ {<br \/> rewrite ^\/sss\/(.*)$ \/$1 break; <br \/> proxy_pass http:\/\/127.0.0.1:8081; <br \/> }                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342586\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : ztechstack <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u5077\u5077\u7684\u95ee\u662f\u4e0d\u662f docker                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342587\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : todd7zhang <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u5982\u679c\u662f Django \u7684\u8bdd\uff0c\u53ef\u4ee5\u5c1d\u8bd5\u770b\u770b\u662f\u4e0d\u662f ALLOWED_HOSTS \u7684\u95ee\u9898                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342588\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : Kirsk <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u770b\u4e00\u56de\u590d location \/sss\/ {<br \/> proxy_pass http:\/\/localhost:8001                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342589\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : Vibra <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @lrvinye \u662f\u7684, \u4ed6\u5e94\u8be5\u5199\u7684\u662f proxy_pass http:\/\/websocket                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342590\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : qwer666df <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @ztechstack #9 \u5bf9\u662f docket<br \/>@lrvinye #1 \u4f46\u662f\u6211\u672c\u5730 hosts \u91cc\u9762 localhost \u4e5f\u6307\u5411\u5230\u4e86 127.0.0.1<br \/>@lpts007 #3 8001 \u7aef\u53e3\u80fd\u76f4\u63a5\u8bbf\u95ee\u6ca1\u5565\u95ee\u9898\u7684                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342591\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : lpts007 <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @qwer666df \u8bbf\u95ee\u7684\u65f6\u5019 Host \u8bbe\u4e86\u5417                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342592\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : ztechstack <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             docker \u7684\u8bdd\uff0cnginx \u5bb9\u5668\u5185\u90e8\u8bbf\u95ee 127.0.0.1 \u662f\u8bbf\u95ee nginx \u5bb9\u5668\u81ea\u8eab\uff1b<br \/>\u5982\u679c\u9700\u8981\u8bbf\u95ee python \u5bb9\u5668\u7684\u8bdd\uff1a<br \/>1. \u5728\u540c\u4e00 docker \u7684 network \u91cc\uff0c\u53ef\u4ee5\u4f7f\u7528[python \u5bb9\u5668\u540d\u79f0]:[python \u670d\u52a1\u7aef\u53e3]\u3002<br \/>2. \u6216\u8005\u4f7f\u7528[\u5bbf\u4e3b\u673a IP]:[python \u5bb9\u5668\u6620\u5c04\u5bbf\u4e3b\u673a\u7aef\u53e3]\u3002                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342593\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : qwer666df <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @lpts007 #14 host \u8bbe\u7f6e\u4e86\u5e94\u8be5\u662f docker \u7684\u95ee\u9898                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342594\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : qwer666df <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @ztechstack #15 \u5bf9, \u6211\u65e9\u4e0a\u53d1\u73b0\u4e86, \u4e5f\u5c31\u662f\u8bbf\u95ee nginx \u7684\u53bb\u4e86, \u4e0d\u662f\u6211\u7684\u672c\u673a, \u6240\u4ee5\u4e00\u76f4\u94fe\u63a5\u4e0d\u4e0a, \u4f60\u8bf4\u7684\u8fd9\u4e2a\u65b9\u6848.. \u6211\u8fd8\u4e0d\u592a\u719f\u6089, \u6253\u7b97\u5148\u770b\u770b docker \u5728\u7814\u7a76\u7814\u7a76&#8230; \u86cb\u75bc                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342595\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : ziwen1943 <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u8fd9\u4e2a\u95ee\u9898\u5927\u6982\u7387\u662f docker \u5f15\u8d77\u7684\uff0c\u5982\u679c\u4f7f\u7528 docker \u7684\u8bdd\uff0cnginx \u5bb9\u5668\u4ee3\u7406\u5e94\u8be5\u4ee3\u7406 python \u5bb9\u5668\u540d\uff08 docker \u5b50\u7f51\u8bbf\u95ee\u4f7f\u7528\u5bb9\u5668\u540d\uff0c\u52a0\u5bf9\u5e94\u7aef\u53e3\uff0c127.0.0.1 \u53ea\u662f\u5728 nginx \u672c\u5bb9\u5668\u5185\u8bbf\u95ee\uff0c\uff09<br \/>\u4e00\u4e2a\u7b80\u5355\u7684\u65b9\u6cd5\u662f\uff0c\u5148\u7528 python \u7684 debug \u65b9\u6cd5\u76f4\u63a5\u76d1\u542c 0.0.0.0 \uff08 ALLOW_HOST \uff09\uff0c\u6d4b\u8bd5\u901a\u8fc7\u540e\u518d\u52a0 nginx \u4ee3\u7406\uff0c\u800c\u4e14\u8fd9\u6837\u4ee3\u7406\u8fd8\u4e0d\u884c\uff0c\u5e94\u8be5\u628a python \u5bb9\u5668\u7684 Django \u9879\u76ee\u9759\u6001\u6587\u4ef6\u901a\u8fc7\u6620\u5c04\u4f20\u9012\u6216\u8005\u5bb9\u5668\u7ee7\u627f\u6587\u4ef6\uff0c\u8ba9 nginx \u6765\u4ee3\u7406\u6240\u6709\u9759\u6001\u6587\u4ef6\u548c api\uff0cdjango \u771f\u6b63\u53d8\u6210\u540e\u7aef\uff0c\u4e0d\u8d1f\u8d23\u9759\u6001\u6587\u4ef6\u7684\u8def\u7531\u548c\u8f6c\u53d1,django \u7684\u6548\u7387\u66f4\u9ad8\u3002                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342596\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : lrvinye <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @qwer666df \u6211\u7684\u610f\u601d\u662f location \u4f7f\u7528\u6b63\u5219\u65f6\u5c06\u4f1a\u628a location \u83b7\u53d6\u7684\u5b8c\u6574 uri \u52a0\u5230\u53cd\u4ee3\u7684\u5730\u5740\u540e\u9762\uff0c\u800c\u4f7f\u7528\u666e\u901a\u5339\u914d\u65f6\u5219\u60c5\u51b5\u4e0d\u4e00\u6837\uff0c\u5efa\u8bae\u641c\u7d22 nginx \u53cd\u4ee3\u659c\u6760\u7528\u6cd5                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"4342597\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : qwer666df <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @lrvinye #19 \u8c22\u8c22\u5927\u4f6c \u5b66\u5230\u4e86<\/p>\n<p>@ziwen1943 #18 \u6069\u6069, \u5e94\u8be5\u662f\u8fd9\u4e2a\u95ee\u9898, \u6211\u4e00\u5f00\u59cb\u53ea\u662f\u62ff Python \u542f\u52a8\u6d4b\u8bd5\u4e00\u628a\u6ca1\u60f3\u5230 docker \u6298\u817e\u6709\u70b9\u590d\u6742, \u73b0\u5728\u5148\u4e0d\u6298\u817e\u4e86,,, \u8fd8\u6709\u6211\u7684 Python \u662f\u88c5\u5728\u672c\u673a\u7684\u4e5f\u4e0d\u80fd\u4ee3\u7406. \u6709\u70b9\u86cb\u75bc, \u8c22\u8c22\u5927\u4f6c\u8bb2\u89e3                                                            <\/p><\/div>\n<\/p><\/div>\n<\/li>\n<li>\n","protected":false},"excerpt":{"rendered":"<p>\u8bf7\u6559 v2 \u5927\u4f6c\u4eec\u4ee5\u4e0b nginx&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[],"tags":[],"_links":{"self":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/208772"}],"collection":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=208772"}],"version-history":[{"count":0,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/208772\/revisions"}],"wp:attachment":[{"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=208772"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=208772"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=208772"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}