Ubuntu
綁定將 subdomain.domain.com 指向 domain.com
因此,我使用 Bind 執行了一個權威的 DNS 伺服器。
我經常添加子域。出於某種原因,這次我添加的子域指向 domain.com 而不是 subdomain.domain.com。我不明白為什麼會這樣。
我在我的 DNS 區域文件中添加了一條新的 A 記錄。它指向我所有其他子域指向的相同 IP 地址。我增加了序列號。我重新載入了綁定。
當我訪問 subdomain.domain.com 時,我會得到位於 domain.com 的任何內容。我現在嘗試使用兩個子域。他們都指向 domain.com。我還檢查了 syslog 文件中是否有任何綁定日誌,但沒有。
我做事的方式完全沒有改變,所以我對為什麼會突然發生這種情況感到目瞪口呆。
我對 DNS 比較陌生。關於如何進行的任何建議?
**編輯:**這是我有問題的子域的 nginx 伺服器塊。以及域的 nginz 伺服器塊。
server { listen 80; server_name subdomain.domain.com; return 301 https://$host$request_uri; } server { listen 443; include /etc/nginx/ssl; include /etc/nginx/cert; server_name subdomain.domain.com; root /home/jasonaburton/deployments/subdomain/current/public; access_log /var/log/nginx/subdomain.domain.com.access.log; error_log /var/log/nginx/subdomain.domain.com.error.log; index index.php; location / { try_files $uri $uri/ /index.php?$query_string; } include /etc/nginx/gzip; location ~* \.php$ { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(.*)$; include /etc/nginx/fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param APP_ENV 'env'; add_header X-Frame-Options "DENY"; add_header X-Content-Type-Options "nosniff"; add_header X-XSS-Protection "1; mode=block"; add_header Cache-Control "no-cache, max-age=0, must-revalidate, no-store, private"; } } server { listen 80; server_name domain.com www.domain.com; return 301 https://$host$request_uri; } server { listen 443 default_server; include /etc/nginx/ssl; include /etc/nginx/pulse-cert; server_name domain.com www.domain.com; root /home/jasonaburton/domain.com/current/web; access_log /var/log/nginx/www.domain.com.access.log; error_log /var/log/nginx/www.domain.com.error.log; index index.php; location ~* \.(js|css|png|jpg|jpeg|gif|ico|woff)$ { expires 24h; } location / { try_files $uri $uri/ /index.php?$query_string; } include /etc/nginx/gzip; location ~* \.php$ { fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(.*)$; include /etc/nginx/fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; add_header Cache-Control "no-cache, max-age=0, must-revalidate, no-store"; } }
謝謝,傑森
嘗試從偵聽後刪除文本“default_server”並重新啟動 nginx。如果這不會破壞任何東西,但可以解決錯誤,那就太好了。
其他嘗試 - 您是否重新載入/重新啟動 nginx 以便它看到特定的子域配置文件?另外,包含子域配置的文件的文件權限是否正確?
檢查文件權限,仔細檢查文件是否在正確的位置等,然後重新載入 nginx。
這將是從 subdomain.domain.com 提供的網頁重定向到 domain.com,或者是 nginx 伺服器塊配置問題,其中 nginx 未配置為正確提供 subdomain.domain.com 的內容.
嘗試:
grep -R default_server /etc/nginx/sites-enabled/
和:
grep -R server_name /etc/nginx/sites-enabled/
(根據您的系統修改路徑)以幫助查明問題。default_server 和 server_name 是應該在配置文件中的相關指令。