準備dnsproxy.py

準備dnsproxy.py

我已經在我的計算機上進行了設置localhost/~<username>~/Sites並且我正在使用它/etc/apache2/extra/httpd-vhosts.conf來製作自訂測試域。如何新增 DNS 通配符網域? ( *.dev.server)

我在 ~/Sites/Wordpress 上設定了 WordPress 多網站網路(如wordpress.server),每當我建立網站時,它都不起作用。我如何讓它發揮作用?

httpd-vhosts.conf

<VirtualHost *:80>
    DocumentRoot "/Users/<username>/Sites/Wordpress"
    ServerName wordpress.server
    ServerAlias www.wordpress.server
</VirtualHost>

/etc/主機

127.0.0.1    wordpress.server
127.0.0.1    www.wordpress.server

謝謝!

答案1

為此,您需要以下人員的協助dnsproxy.py

準備dnsproxy.py

首先,下載 Python 檔案並將其移至您的主目錄中。 在這裡下載然後解壓縮檔案。接下來,將 Python 檔案移到您的主目錄中。 ( Users/<your username>)

添加通配符到/etc/hosts

使用您喜歡的編輯器(例如nano)透過終端機開啟主機檔案。

sudo nano /etc/hosts

新增以下條目:

127.0.0.1       *.wordpress.server

跑步dnsproxy.py

dnsproxy.py透過在終端機中執行以下命令來運行:

python ~/dnsproxy.py -s 8.8.8.8

-s 8.8.8.8指的是委託 DNS 伺服器。在此命令中,我們使用 Google 的 DNS 伺服器。如果需要,您可以將其替換為其他 DNS 伺服器。 (如1.1.1.1)

如果您在 MacOS Catalina 10.15 中使用該命令時遇到錯誤python,請嘗試執行以下命令:

/usr/bin/python ~/dnsproxy.py -s 8.8.8.8

筆記:不要關閉或終止終端窗口,否則通配符/etc/hosts將不起作用。

添加通配符至httpd-vhosts.conf

在終端機中,使用您喜歡的編輯器開啟以下文件:

sudo nano /etc/apache2/extra/httpd-vhosts.conf

新增以下項目:(替換wordpress.server為您的伺服器名稱和Wordpress專案資料夾)

<VirtualHost *:80>
    DocumentRoot "/Users/<your username>/Sites/Wordpress"
    ServerName wordpress.server
    ServerAlias *.wordpress.server
</VirtualHost>

ServerName定義主主機名,同時ServerAlias定義通配符子網域。

修改您的 DNS

前往系統偏好設定( > 系統偏好設定...)並前往網路偏好設定。 系統偏好設定中的網路偏好設定

然後轉到窗格左下角的“進階”。 系統偏好設定中的網路偏好設定

轉到窗格頂部的 DNS 標籤。 系統偏好設定中的網路偏好設定

接下來,新增127.0.0.1為 DNS 伺服器。 (如果您沒有條目並且要添加127.0.0.1,我建議您添加網路的預設 DNS 或其他 DNS,以便8.8.8.8您的互聯網在您不開發時也能正常工作。) 系統偏好設定中的網路偏好設定

最後,按一下窗格右下角的“確定”,然後按一下“應用”。

檢查是否有錯誤

在終端機中執行以下命令:

apachectl configtest

它可能會顯示一些警告,但最終應該會導致Syntax OK.

如果它不顯示Syntax OK並導致錯誤,請轉到導致錯誤的檔案並嘗試修復它。

重新啟動阿帕契

在終端機中執行以下命令:

sudo apachectl restart

現在嘗試存取隨機子網域,例如test.wordpress.server.它應該有效。

相關內容