前提・実現したいこと
nginxというサーバーをcentosにインストールして設定をしているのですが、
サーバーのドメイン名だけでデフォルトのdocumentroot
nginx
1/usr/share/nginx/html/
にブラウザからアクセスできるようにしたいと
思っています。
ブラウザに
url
1http://tnginx/
と入力してアクセスしようとしました。しかし、
urlの部分が
url
1http://www.tnginx.com/
に変化して
アクセスしようとしているサイトを見つけられません。
とでて繋がりませんでした。
できたこと
dnsのホスト名を付けた
url
1http://ns.tnginx/
ではつながったのでサーバーが落ちているということはありません。
また、別のサーバーソフトであるapacheをインストールしたときは
特別な設定をしなくてもドメイン名だけでアクセスできました。
nginxではなにか他に設定が必要なのでしょうか?
よろしくお願いします。
また、足りない情報があればご指摘お願いします。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
ソースコード
試したこと
1.dnsサーバーの設定
bindというdnsサーバーをインストールして設定しました。
zoneファイル
#/var/named/tnginx.zone
tnginx.zone
1$TTL 1D 2@ IN SOA ns.tnginx. root.tnginx. ( 3 0 ; serial 4 1D ; refresh 5 1H ; retry 6 1W ; expire 7 3H ) ; minimum 8 NS ns.tnginx. 9@ IN A 192.168.10.108 10ns IN A 192.168.10.108 11www IN CNAME ns.tnginx. 12
この状態で
http://ns.tnginx/ http://www.tnginx/
とブラウザ側からアクセスすると
documentRootの
/usr/share/nginx/html/index.html
につながりました。
http://ns.tnginx/とhttp://www.tnginx/は繋がるのですが
http://tnginx/では繋がりませんでした。
2.バーチャルホスト
バーチャルホストを設定してtnginxでつながらないかと思い試してみました。
設定ファイル
#/etc/nginx/conf.d/default.conf
server { listen 80; server_name tnginx; #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { root /usr/share/nginx/html; index index.html index.htm; }
参考HP
[https://heartbeats.jp/hbblog/2012/04/nginx04.html]
このHPでバーチャルホストの設定について見ると
引用テキストnginxはこのリクエストを受け取ると、このホスト名が
server_nameディレクティブに設定したサーバ名に
一致するserverディレクティブのバーチャルサーバを選び、
そのserverディレクティブ内の設定が適応されます。
とserver_nameを指定すればできると書かれていると思うのですが
アクセスしようとしているサイトを見つけられません。
と表示されます。
3.apacheサーバーでdnsを設定したとき
ドメイン名だけでアクセスできると思っている理由は
apacheという別のサーバーでbindをインストールして設定したときはできたからでした。
apacheの設定では
zoneファイル
#/var/named/t.com.zone
@ IN SOA dns1.t.com. root.t.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dns1.t.com. IN MX 10 mail mail IN A 192.168.10.105 @ IN A 192.168.10.105 dns1 IN A 192.168.10.105 PC IN A 192.168.10.100
上記の状態でブラウザに
http;//t.com/
と入力してアクセスすると特別な設定をしないでドメイン名だけでもアクセスできました。
4.用語の勘違い
ドメイン名は、インターネット上のネットワークを特定する文字列。
ホスト名は、ネットワーク上のコンピュータを特定する文字列。
FQDNは、ホスト名とドメイン名をつなげて記述した文字列で、インターネット上の特定のコンピュータを指す
dnsサーバーのホスト名ドメイン名は
nginxは
ホスト名:ns
ドメイン名:tnginx
apache
ホスト名:dns1
ドメイン名:t.com
であっていると思うのですが自信はありません。
t.comだけでアクセスできていたのでtnginxだけでもできるのではないかと思っています。
5.firewallの設定
firewallの設定は他のurlでは繋がっていたので大丈夫だと思いますが
確認のため見てみました。
#firewall-cmd --list-all
public (active) target: default icmp-block-inversion: no interfaces: xxx sources: services: ssh dhcpv6-client http dns ports: protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
services のところにhttpとdnsがあるのでできると思います。
補足情報(FW/ツールのバージョンなど)
nginx 1.14.1
centos 7.5.1804
bind 9.94-RedHat-9.94-61.el7_5.1(Extended Support Version)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。