2009-12-08 60 views

回答

2

花了我1-2個小時。我沒有一步一步的指導(我希望我已經寫下了所有內容),但它需要更新配置文件,更新數據庫(某些表有域引用,但我不記得它是哪一個 - 它可能是這只是爲了我在Gallery2數據庫中的圖像引用),並在內容中粗略搜索錨鏈接中的完整域引用。

我遷移了一個Drupal 6站點,包含了Gallery2和Google Maps集成,大約有40個插件,我沒有遇到任何主要障礙。

2

如果你(和你使用的contrib模塊的作者)沒有通過不把絕對URL的代碼中的一個好工作,遷移開發現場現場製作時,其中一個應該是死容易(我做例行,其發佈)。

當然,我認爲你正在做的事情是明智的,例如,不是從apache/mySQL服務器將網站遷移到nginx/postgres之一,也許還需要在流程中爲數據庫表添加前綴。

如果是這樣,那麼你只需要複製整個文件樹並導出/重新導入你的數據庫。

如果你是兩個類似的架構之間遷移那麼很可能你將只需要改變一些東西在settings.php文件。該文件是有據可查的。只有兩件事情,我通常不得不改變是:

  • DB用戶名/密碼
  • 餅乾域

在該文件中也有類似的可能性其他配置選項來選擇基本URL在發生問題時手動。

不要忘記刷新緩存一旦你第一次登錄新的遷移的網站。

編輯:剛來到我的腦海:如果你使用任何,你還必須更新您的開發人員鍵第三方API的(例如,如果你使用谷歌地圖或谷歌分析),因爲這些領域具體。

HTH!

+0

謝謝!是的,apache to apache和no,我不認爲人們可以認爲我做了任何合理的drupal新手,但是我會感謝這裏的所有幫助。 – Tim 2009-12-09 03:58:50

+0

如果您不確定已編寫代碼的質量(如果特別需要在代碼中存儲絕對路徑),您可以執行以下一項或兩項操作:1)**停用(不會卸載)所有您在移動網站之前都有疑問的模塊,然後在新網站上逐一重新激活它們,檢查是否有任何突破2)**掃描所述模塊的代碼以進行文本匹配'/ \ S +:\/\/\ S + /'正則表達式。**匹配沒有包含「://」的空格的所有字符串,如「http:// whatever」或「ftp://whatever/else.omg」。 :) – mac 2009-12-09 12:36:15

+0

以上是Henrik(+1)在他的回答中提到的內容的補充(因此不是替代) – mac 2009-12-09 12:37:24

2

基本上,MAC說(+1)

此外,我經常需要調整.htaccess文件有關重寫規則了一下。對於共享主機環境中的小型站點,我通常將drupal安裝放置在文檔根目錄下的子文件夾中(例如,允許登臺等),通過URL重寫「隱藏」子文件夾。因此,對於網站的每一次「移動」,我都需要修正這些規則。

對我來說,最大的罪魁禍首是使用必須存儲絕對URL才能完成工作的模塊的網站(例如securepages)。對於那些你應該在移動站點之前禁用它們,在重新啓用之前調整它們的設置。

如果您不確定您使用的某些模塊是否存儲絕對URL,則可能需要付費以在本地提取數據庫轉儲並搜索產生的文件以查找「http://」,「https:// '等等,以及你的'舊'域名(你需要排除這個看門狗和緩存表)。

+2

是的,引起我幾次的事情是站點文件夾更改,即從站點/ example.com /到sites/example2.co 所以有些東西像系統表中的文件表和引用需要更新,但在搜索'http://'時錯過了 – Andrew 2009-12-09 07:44:02