2011-10-28 136 views
0

我在本地機器上開發了一個Wordpress網站,現在我正在尋找一種機制來輕鬆快速地部署它。我正在考慮DEV環境(位於本地計算機上),STAGING環境(客戶端頁面上的子域,可能是staging.example.com),當然還有一個LIVE環境(example.com)!wordpress部署解決方案,想法?

我當前的解決方法: 當我使用Aptana時,我可以將更改後的文件與IDE提供的部署機制同步。導出我的本地數據庫,查找/替換永久鏈接並導入整個事情 - 完成!要實時部署,我必須將所有分段文件替換爲實時文件。

這應該會更容易!有沒有人有更好的工作流程? 我很開放,真的很激動你的想法!

非常感謝 問候

回答

0

我使用Capistrano的https://github.com/capistrano/capistrano/wiki/爲我所有的部署需求,它是非常好的解決方案。你可以簡單地腳本編寫任何東西,它只是工作

它也可以用於您的部署方案。

+0

Capistrano的似乎是一個很好的工具,但一點點了,我的目的。是否有可能編寫一個PHP腳本,它會生成一個數據庫轉儲,在所有URL上進行查找/替換,清除活動數據庫並導入轉儲,最後將上傳文件夾從分段複製到活動....可以完成PHP腳本? – ChristianB

1

是的,這是令人沮喪的,完全瘋狂的WordPress的需要這個過程,因爲他們把絕對的網址在數據庫中。我採用類似的方式開發,使用多個分期網站進行qa和客戶評論。在我第一次使用Wordpress進行部署之後,我幾乎完全放棄了該平臺。核心開發人員和其他人推薦的所有解決方案都不起作用。

所以我寫了一個插件:http://wordpress.org/extend/plugins/root-relative-urls/ 修復了這個問題。有了這個插件,你不需要搜索&替換你的內容。沒有主機文件黑客或DNS技巧。通過我的插件,您可以通過IP地址或Computername或任何類型的轉發主機訪問站點。並且由於它在進入數據庫之前將urls轉換爲相對根目錄,所以您不必擔心它們在不同的域格式之間工作。而且,由於它們不會在URL中對方案(http/s)進行硬編碼,所以如果您使用SSL,則不必擔心在wordpress trac數據庫中報告的520個左右的錯誤。

這是我在這些天工作的任何wordpress項目的主食。我已經寫了一些其他插件來處理平臺中存在的特性,您可以在這裏查看:http://wordpress.org/extend/plugins/profile/marcuspope

希望能夠解決您的問題。

0

我同樣使用Capistrano進行WordPress和Drupal部署。我通常在本地安裝模塊進行測試,然後推送到測試和生產環境。對於上傳等,我添加了自定義任務來管理同步存儲在scm中的文件和那些不存在的文件。這裏有一個簡單的指南,我把它放在一起

http://www.celerify.com/deploy-wordpress-drupal-using-capistrano