追記 nano etc/nginx/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/doc/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 { } } }
環境については後述させて頂きますがまず要所を説明します。宜しくお願い致します。
前提・実現したいこと
djangoアプリを開発中です。
http://example.com/ というドメイン名をIPと紐づけて表示させたいです。
発生している問題
現在 http://example.com:8080/ というURLを打つと
1.2.3.4 というIPアドレス上の内容が表示されます。
1.2.3.4には既にdjangoをnginxで設置しています。
しかし
http://example.com/ という風に「:8080」を抜いたドメインだけのURLを叩くと
以下のようにcentosの画面が表示されてしまい1.2.3.4の内容が表示されません。
通常はhttp://example.com/のようにブラウザ上で表示させる事が多いですよね。
その場合つまりhttp://example.com/とした場合以下のように表示されます。
SSLは次の段階として今は除外しております。
やりたいことを一文で
つまり
http://example.com/ のURLを叩いて
1.2.3.4 というIPアドレス上の内容を表示させたいです。
補足情報(FW/ツールのバージョンなど)
さくらVPS
centos7
python3.8
nginx
gunicorn
ドメイン会社の環境設定は既にさくらVPS側に向いています。
さくらVPS側のネームサーバーの設定は1.2.3.4で設定しています。
@ A 1.2.3.4
@ MX 10 @
www CNAME @
mail CNAME @
ftp CNAME @
※みえずらくてすみません
nano /etc/ssh/sshd_config
の中にあるポート番号は以下のように設置しております。
# If you want to change the port on a SELinux system, you have to tell # SELinux about this change. # semanage port -a -t ssh_port_t -p tcp #PORTNUMBER Port 25252 #AddressFamily any ListenAddress 0.0.0.0 #ListenAddress ::
sudo firewall-cmd --list-all を打ちましたが8080は許可しています。
public (active) target: default icmp-block-inversion: no interfaces: eth0 sources: services: dhcpv6-client http https ssh ports: 443/tcp 8000/tcp 8080/tcp protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
gunicornの中には以下のように設定しております。
sudo nano /etc/nginx/conf.d/gunicorn.conf
server { listen 80; server_name 1.2.3.4; location / { proxy_pass ; http://1.2.3.4:8080 proxy_set_header Host $http_host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
宜しくお願いします。