Ubuntu
Lightsail 實例請求使用域名超時但使用 IP 地址
我正在嘗試在Amazon Lightsail實例上創建BookStack站點。
我遇到了一個問題,即附加到我的 Lightsail 實例的靜態公共 IP 地址可以從任何瀏覽器或電腦正常訪問我的站點。但是,我指向同一個 IP 的域地址將超時並且不起作用。
作業系統是 Ubuntu 18.04,IP 是
[IP]
,域是[domain].dev
. 這是 BookStack 用於在 Ubuntu 18.04 上設置的腳本。虛擬主機配置如下。我已經嘗試/完成了以下操作:
- 我使用Google Domains託管,並且我已經轉到我的 DNS 並為 @(基本域)和指向我的靜態 ip 的 www 添加了 A 記錄。沒用。
- 我通過 Lightsail 控制台創建了一個 DNS 區域,將 @ 和 www 指向我的靜態 IP。然後,我將 Amazon 名稱伺服器添加到我的 Google 域的名稱伺服器而不是 Google 的名稱伺服器中。沒用。
- 我使用Route 53再次嘗試了上述操作,並在那裡配置了名稱伺服器,而不是使用 Lightsail 的 DNS 區域,但這也不起作用。
當我 ping 靜態 IP 時它超時並且我沒有得到響應,但是從我在網上閱讀的內容來看,對於某些網站來說這可能是正常的。當我 ping 我的域時,它解析到正確的 IP 地址,但也沒有得到響應。
我很困惑為什麼 ping 我的域會給我正確的 IP 地址,但網站仍然拒絕載入。我已經嘗試了好幾天,所以它不應該是傳播問題。該網站將通過 IP 載入,而不是使用域載入。
<VirtualHost *:80> ServerName [domain].dev ServerAdmin webmaster@localhost DocumentRoot /var/www/bookstack/public/ <Directory /var/www/bookstack/public/> Options Indexes FollowSymLinks AllowOverride None Require all granted <IfModule mod_rewrite.c> <IfModule mod_negotiation.c> Options -MultiViews -Indexes </IfModule> RewriteEngine On # Handle Authorization Header RewriteCond %{HTTP:Authorization} . RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] # Redirect Trailing Slashes If Not A Folder... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} (.+)/$ RewriteRule ^ %1 [L,R=301] # Handle Front Controller... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L] </IfModule> </Directory> ErrorLog /error.log CustomLog /access.log combined </VirtualHost>
所以解決方案非常……有趣。至少可以說我很沮喪,我花了很長時間才弄清楚這一點,但這裡是:
據我了解,Google 擁有 .dev 頂級域名,並且此後需要SSL 證書 (https://) 才能在 .dev 域上託管域。因為我還沒有,所以它不起作用。因此,解決方案是要麼移至沒有 .dev 的新域,要麼將 SSL 證書添加到您的站點。
從那以後,我搬到了我擁有的另一個域,以確保它可以正常工作,而且確實可以。