2017-08-17 50 views
0

目前我在製作使用PHP和MySQL數據庫的一個網站的過程。我非常喜歡在帶有WAMP的本地服務器之間進行調試併發送到實時服務器。所以我想知道是否有辦法根據網站所在的服務器自動調整數據庫名稱,用戶名和密碼。目前,我只是做手工,但我一直忘了這件事,並且變得惱人特別是因爲我上傳到服務器現場,每天爲我的朋友來測試幾次。 我使用$_SERVER['REMOTE_ADDR']嘗試,但出於某種原因,這是行不通的。你們有沒有解決辦法,還是應該繼續手動進行?是否有辦法來自動調整數據庫名,用戶名和密碼

+0

重命名你的本地數據庫,用戶名和密碼,以匹配遠程之一。或者我不明白問題。 –

+0

[檢測在PHP本地主機或實時環境(https://stackoverflow.com/questions/2753249/localhost-live-detect-by-http-host) – sidyll

回答

1

有多種方法去了解它。

  • 檢查服務器名稱與gethostname和切換憑據基於此。
  • 創建憑據的每個服務器上的文件,具有相同名稱/路徑。上傳到活動服務器時不要更新該文件。

如果你的代碼允許環境的文件,如.env,使用。

0

創建一個文件,說/doc/root/path/.env與服務器設置。從它獲取mysql憑據,不要使用其餘代碼進行更新。

.env爲您的本地服務器和.env的生產企業之一。

MYSQL_USER=user 
MYSQL_PASSWD=passwd 
MYSQL_DB=dbname 

<?php 
$config = parse_ini_file('./.env'); 
0

有一個包含了兩種狀態,即生產和發展的環境,一流的。對於每一個狀態進入不同的數據庫憑證。在我來說,我有一個常數,其中列明瞭環境類我是否是在生產常數是一個布爾值true或false。例如

環境::生產

生產恆力將布爾..

如果在生產中,它使用的生產憑據其他人使用的發展,反之亦然。您可以將憑據存儲在.ini文件或php文件中。如果是前者,那麼請確保該文件是外面的文檔根目錄

相關問題