質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Gunicorn

Gunicorn (Green Unicorn)は、Rubyのunicornをベースに開発されたUNIX向けのPython製HTTPサーバです。他のライブラリとの依存関係がないため、容易にインストールして使用できます。

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

2回答

2742閲覧

http://example.com:8080/ の :8080 を削除してIPの中身を表示させたい

chrnougi

総合スコア0

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Gunicorn

Gunicorn (Green Unicorn)は、Rubyのunicornをベースに開発されたUNIX向けのPython製HTTPサーバです。他のライブラリとの依存関係がないため、容易にインストールして使用できます。

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/08/17 03:55

編集2020/08/17 06:05

追記 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; } }

宜しくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chrnougi

2020/08/17 04:06 編集

失礼いたしました。 http://xxx.com/:8080 ではなく http://xxx.com:8080/ です。ご指摘ありがとうございました。タイトルと内容の該当部分を修正させて頂きました。
chrnougi

2020/08/17 04:22

例示用ドメインを追記修正しました
guest

回答2

0

/etc/nginx/nginx.confの記述はどうなってますか?
location / があると思うので、配下を/etc/nginx/conf.d/gunicorn.confと同じように書き換えれば良いのでは。
もしくは/etc/nginx/conf.d/example.com.confファイルを作成し

/etc/nginx/conf.d/gunicorn.confと同じようにvirtualhostを設定する感じで

server { listen 80; server_name example.com; 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; } }

投稿2020/08/17 05:34

Ken-ichi_Yamada

総合スコア13

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chrnougi

2020/08/17 06:05

回答頂きありがとうございます。 nano etc/nginx/nginx.confの中身を質問の冒頭に追記という形で添付致しましたのでご確認をお願い致します。
chrnougi

2020/08/17 06:10

>>配下を/etc/nginx/conf.d/gunicorn.confと同じように書き換えれば良いのでは。 nginx.confの中は以下でした。 location / { } nginx.confのlocaitonの中をgunicorn.confのように以下3行追加するという事でしょうか? 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;
guest

0

http://xxx.com:8080とした場合も、http://xxx.comとした場合でも、(接続した後にリダイレクトやプロキシで振り分ける場合は話が別ですが)ポート番号は名前解決には影響しませんので、どちらも同じIPアドレスに接続されます。

つまり、http://xxx.com/にあるものも、1.2.3.4上にある、別なWebサーバが応答している結果です。

Djangoを80番ポートからアクセスできるように設定を変更しましょう。

投稿2020/08/17 04:16

maisumakun

総合スコア146018

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chrnougi

2020/08/17 04:39 編集

>Djangoを80番ポートからアクセスできるように設定を変更しましょう。 上記はあ、い、うのどこのファイルを指していますか? あ django上のsettings.pyのポート番号の事でしょうか? い gunicorn上のconfファイルの事 う /etc/ssh/sshd_configのファイル内のポート番号 え それ以外 うに関しては25252というポートを開放しております。 宜しくお願い致します  ③
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問