2016-10-09 17 views
0

私はmkdocsをセットアップし、ポート8000​​で稼動しています。Nginxは以下の設定でリバースプロキシとして設定されています。しかし、リバースプロキシブラウザを使用してサイトにアクセスすると、接続時間は約2分とページの読み込み時間が長くなります。また、ブラウザで「X」を押すと、ページ全体がすぐに表示されます。誰か助けてくれますか?mkdocs nginxリバースプロキシ低速

server { 
    listen 80; 

    server_name docs.example.com; 

    location/{ 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header Host $http_host; 

    proxy_pass http://127.0.0.1:8000/; 
    proxy_redirect off; 
    proxy_buffering off; 
    } 
} 

そしてnginx.confが

# For more information on configuration, see: 
# * Official English Documentation: http://nginx.org/en/docs/ 
# * Official Russian Documentation: http://nginx.org/ru/docs/ 

user nginx; 
worker_processes auto; 
error_log /var/log/nginx/error.log; 
pid /run/nginx.pid; 

# Load dynamic modules. See /usr/share/nginx/README.dynamic. 
include /usr/share/nginx/modules/*.conf; 

events { 
    worker_connections 1024; 
} 

http { 
    log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 
         '$status $body_bytes_sent "$http_referer" ' 
         '"$http_user_agent" "$http_x_forwarded_for"'; 

    access_log /var/log/nginx/access.log main; 

    sendfile   on; 
    tcp_nopush   on; 
    tcp_nodelay   on; 
    keepalive_timeout 65; 
    types_hash_max_size 2048; 

    include    /etc/nginx/mime.types; 
    default_type  application/octet-stream; 

    # Load modular configuration files from the /etc/nginx/conf.d directory. 
    # See http://nginx.org/en/docs/ngx_core_module.html#include 
    # for more information. 
    include /etc/nginx/conf.d/*.conf; 

    server { 
     listen  80 default_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/{ 
     } 

     error_page 404 /404.html; 
      location = /40x.html { 
     } 

     error_page 500 502 503 504 /50x.html; 
      location = /50x.html { 
     } 
    } 

# Settings for a TLS enabled server. 
# 
# server { 
#  listen  443 ssl http2 default_server; 
#  listen  [::]:443 ssl http2 default_server; 
#  server_name _; 
#  root   /usr/share/nginx/html; 
# 
#  ssl_certificate "/etc/pki/nginx/server.crt"; 
#  ssl_certificate_key "/etc/pki/nginx/private/server.key"; 
#  ssl_session_cache shared:SSL:1m; 
#  ssl_session_timeout 10m; 
#  ssl_ciphers HIGH:!aNULL:!MD5; 
#  ssl_prefer_server_ciphers on; 
# 
#  # Load configuration files for the default server block. 
#  include /etc/nginx/default.d/*.conf; 
# 
#  location/{ 
#  } 
# 
#  error_page 404 /404.html; 
#   location = /40x.html { 
#  } 
# 
#  error_page 500 502 503 504 /50x.html; 
#   location = /50x.html { 
#  } 
# } 

} 
+0

誰でもお手伝いできます – Irfad

+0

lo0で聞いていますか?あなたは 'nc 127.0.0.1 8000'を試しましたか? – tjvr

+0

@tjvrはい私はカールして結果を得ることができます – Irfad

答えて

0

MkDocsでは静的サイトジェネレータです。

あなたのページをstatic web pagesとして "ビルド"し、既にビルドされているHTMLページをサーバーにアップロードし、ユーザーがサーバーに提供することが目的です。大きな利点は、サーバーがMarkdownとテンプレートをリクエストごとに再処理する必要がないため、非常に父親であることです。

MkDocsにはserveコマンドが含まれているのは間違いありませんが、付属の「サーバー」は開発専用です。言い換えれば、ドキュメントを書くときに、開発サーバーを使ってローカルマシン上の変更内容を確認することができます。ただし、サーバーは他のマシンや外部に何かを提供するためのものではありません。サーバーが複数の同時接続を持つことは決して予期されませんでした。

ポートにnginxを表示するのではなく、静的ファイルのディレクトリを指すようにして、MkDocsドキュメントのビルドをそのディレクトリにコピーする必要があります。

+0

ありがとうございました。それは理にかなっている。私はサイトからのドキュメンテーションで構築することができました。私はサーブが目的を開発するために意図されていた知っているdin't :) – Irfad

関連する問題