問題描述
是否可以在尚未配置域名的公共伺服器上安裝 WordPress?我以為我會在 IP-only 上進行設定,並在我的 Nginx 配置中使用了 server_name _; 。我認為這是因為 WordPress 安裝死於 wp-admin/install.php?step=2,我看到 Nginx 日誌中出現以下錯誤:
2017/01/08 07:24:53 [error] 25686#25686: *22 FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught phpmailerException: Invalid address: wordpress@_ in /home/ankush/wp_main_site/wp-includes/class-phpmailer.php:946
Stack trace:
#0 /home/ankush/wp_main_site/wp-includes/pluggable.php(352): PHPMailer->setFrom('wordpress@_', 'WordPress', false)
#1 /home/ankush/wp_main_site/wp-admin/includes/upgrade.php(395): wp_mail('dkasolutions.sa...', 'New WordPress S...', 'Your new WordPr...')
是域名是必須的還是我做錯了?
最佳解決方案
將 server_name 設定為 IP 地址,例如:
server {
listen 80;
server_name 0.1.2.3;
// other stuff
}
你也可以把它留下來,因為 ngninx 中的預設是一個空字串。但是那些不能驗證 $_SERVER['SERVER_NAME']和類似值的 WordPress 中的所有這些片段將會中斷。
有關這方面的進展請見 #25239 機票。
如果只有 WordPress 有一個 Request 物件,像其他人一樣。那麼準備所有這些全球價值觀是很容易的。見 Symfony for an example 。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。