wordpress七步曲


前言

wordpress作為最知名的博客開源程序,不僅方便安裝配置,還提供了大量的主題和插件,能讓我們快速地創建個性化的PHP博客站點。本篇將會講述如何一步一步配置的配置wordpress站點,以及作為developer如何去管理wordpress站點和源碼。中間涉及到一些svn自動提交、服務器的配置問題,我盡可能地寫出了詳細的解決方式並貼出了截圖。鄙人也是初次管理自己的wordpress站點,如果您有什么好的心得體會和建議,敬請留言,歡迎交流。

本文已同步至我的站點:積累吧wordpress七步曲

本人創建並維護個人wordpress站點有以下幾點原因:

1. 希望能有一個個人平台來梳理自己的知識,並分享給大家,當然也希望通過和大家的交流獲取一些知識。技術文章中涉及到demo的部分我都盡可能地提供在線demo,目前主要提供asp.net和php的在線demo
2. 對PHP有一些興趣,想通過wordpress來增進自己的PHP & Mysql水平
3. 對SEO有一些興趣,想通過wordpress來嘗試SEO的成果並積累一些經驗
4. 作為一個個人展示平台,博客本身也是一種較好的營銷方式
5. 提升自己的寫作水平

本章大綱:

一、Wordpress下載
二、服務器配置
三、安裝Wordpress
四、加入google分析
五、用SVN管理源代碼
六、配置ASP.NET Demo站點和PHP Demo站點
七、用windows live writer發布博客到wordpress

本文能為你解決什么問題?

1. 客戶端svn提交代碼,服務端自動更新
2. apache服務器配置多站點
3. 一個ip下apache和iis共用80端口

一. Worpress下載

我使用的是最新的中文版wordpress 3.3.1, 在worpress中文站上提供了兩種格式的下載:
1. zip格式下載
2. tar.gz格式下載

二. 服務器配置

由於服務器的系統是windows server 2003,而非*nix系列,所以我得用WAMP的配置方式。常見的WAMP套件有appserv(這個我一直在用)和xampp,它們用於搭建apache + mysql + php環境非常方便快捷。

appserv最新的版本是2.5.9和2.6.0,在安裝wordpress之前我沒有仔細閱讀官方文檔,結果導致用這兩個版本的appserv來配置wordpress都不通過。主要原因在於PHP版本不對,appserv 2.5.9的PHP版本為5.2.3,appserv 2.6.0的PHP版本為6.0,而wordpress 3.3.1對PHP版本的要求恰恰在這兩者之間。

服務器環境要求
  • PHP 5.2.4 或更新版本(不支持第三方推出的“PHP 6.0”)
  • MySQL 5.0 或更新版本
  • Apache mod_rewrite 模塊(可選,用於支持“固定鏈接”和“站點網絡”功能)

幸好最新的xampp的配置符合wordpress 3.3.1的環境要求。
apache friends上下載最新的適用於windows的xampp,下載頁面也提供了詳細的圖文教程。安裝完后檢查一下\xampp\apache\conf\httpd.conf文件中的LoadModule rewrite_module modules/mod_rewrite.so,確認開頭處沒有#(注意:#是作為apache配置文件的注釋符號)

注意:xampp的apache默認使用80端口,如果不想使用80作為apache的默認端口,請修改httpd.conf文件並在防火牆中添加相應的例外端口。如果發現更改了端口后,通過xampp啟動apache出現80 port busy問題,請通過service.msc命令到服務管理中心啟動apache服務,這或許是xampp控制中心的一個bug。

三. 安裝wordpress

安裝的步驟很簡單,參考這個地址:wordpress安裝,無論是擁有完全控制權限的服務器還是利用cpanel進行管理的空間,這兒都提供了及其詳盡的步驟。

需要注意的是wp-config.php配置文件的修改,需要配置好自己的wordpress數據庫、訪問用戶名密碼、編碼和語言。
安裝完wordpress站點后,先去后台瀏覽一下基本菜單配置,wordpress的后台管理中心提供了主題選擇和下載。我使用iNove作為站點的主題。

四. 加入google分析

上面的步驟已經把一個基本的wordpress站點配置完成了,作為獨立的博客站點,我會常常關注和跟蹤博客的訪問情況,google analytics是一個很好的工具,而且wordpress后台也提供了配置google analytics的接口。

操作google analytics的步驟如下:

1. 如果還沒有google analytics賬戶,請先去http://www.google.com/analytics/申請一個賬戶。
2. 點擊右上角的管理圖標,添加賬戶

image

3. 添加完賬戶后,到【所有賬戶->賬戶名稱->跟蹤代碼】選項卡下,可以看到自己的跟蹤ID,找到跟蹤代碼並復制。

image

4. 進入wordpress后台,到【外觀->當前主題選項】【網站分析】一欄中復制剛才的代碼,保存。

image

image

配置完成后,很快就能通過google分析查看自己的博客訪問情況。

五. 用SVN管理wordpress源代碼

雖然wordpress的后台【外觀->主題->編輯】菜單中,提供了直接編輯wordpress主題的入口,但在這里更改主題源代碼必須小心,作為developer有時候粗心是不可避免的,那我們最好使用源代碼管理工具來管理wordpress的源代碼。

這里我使用SVN作為Source Control,用Zend Studio作為IDE工具,因為Zend Studio支持svn的集成。

需要兩個軟件:

1. 在sourceforge上下載你喜歡的tortoisesvn版本:點擊這里去下載
2. 下載visualsvn server作為svn服務器:visualsvn server 最新版

tortoisesvn在自己的機器和服務器各安裝一個(安裝完后最好重啟),visualsvn server安裝在服務器上。visualsvn server畢竟是圖形化工具,不需要任何svn命令進行操作,使用方式及其簡單。

安裝完后再執行下面的步驟:

1.  如果你是在windows server服務器中安裝了visualsvn server,並啟用了防火牆,在安裝完畢后請在【Control Panel –> Windows Firewall –> Exceptions】中添加端口支持,例如我的svn服務器的端口是8080,那就添加8080端口。

SNAGHTMLc779c4

2. 在visualsvn server中創建一個Repository,我將它命名為websites(你可以按照自己的喜好來命名),然后為這個Repository添加用戶並分配Read-Write權限,記得把everyone用戶的權限設置為No-Access或者直接刪除everyone用戶。然后通過tortoisesvn將wordpress代碼簽入到你的Repository中。

image

3. 簽出源代碼

(1) 服務器端

刪除C:\websites目錄(因為已經將源代碼導入到svn),然后再通過tortoisesvn簽出源代碼,簽出源代碼的路徑也放在C:\websites
做這一步的是為了讓服務器的源代碼蓋上SVN的戳,因為原先的C:\websites代碼是沒有烙上SVN的大印的。

(2) 客戶端

客戶端直接通過tortoisesvn簽出一份源代碼就可以了。

4. 創建svn鈎子腳本用於自動更新服務器下的代碼

每次我們在客戶端更改了代碼並提交,然后遠程到服務器上再更新一次才能看到我們修改的效果,這類操作太過於重復和麻煩,而且遠程的速度是和網速掛鈎的。慶幸的是svn提供了hook(鈎子)腳本來幫助我們實現這一省力過程(只有省力才能給力:-D)。

創建鈎子腳本有兩種方式。

方式一:直接通過visualsvn server管理hook腳本,在Post-commit hook彈出窗中輸入如下代碼:

"C:\Program Files\VisualSVN Server\bin\svn.exe" update "C:\websites" 
--username YourUserName --password YourPassword  

YourUserNameYourPassword分別替換為你的svn的用戶名和密碼,"C:\Program Files\VisualSVN Server\bin\svn.exe" 是visualsvn的地址"C:\websites" 是要更新的目錄

image

image

image

保存完鈎子腳本后,在C:\Repositories\websites\hooks目錄下會生成一個post-commit.cmd文件

方式二:到C:\Repositories\websites\hooks下面手動創建post-commit.cmd文件

4. 設置websites目錄權限

好似所有的工作都已經准備好,在客戶端更新一個文件,服務器端的C:\websitess會自動更新。OK,看看上面的步驟是否經得起下面的測試。

在自己的機器的wordpress目錄下(這個目錄是從tortoisesvn簽出的)添加一個test.html,里面簡單輸入一些內容,然后add、commit,結果彈出下面的錯誤。

SNAGHTMLed22a1

簡單分析一下錯誤,因為這才剛剛創建,不可能是locked原因,也許是權限不夠。那么就把websites文件夾的readonly屬性勾掉(雖然不一定起作用),然后在Security選項卡下設置Users的權限為Full Control。

image

然后再更改test.html,提交->成功!

SNAGHTMLf2125c

六. 配置ASP.NET Demo站點和PHP Demo站點

1. wordpress的站點已經基本配置好,由於我自己的一些原創博客里面會包含一些ASP.NET或PHP的Demo,我想提供一些在線的Demo,能讓大家看到直接的效果,於是我在websites下建了兩個文件夾csdemo和phpdemo,分別對應域名csdemo.jileiba.comphpdemo.jileiba.com,這三個站點是放在同一服務器下的。

image

2. Apache配置多站點

這里忘記說了一點,xampp默認的站點根目錄是放在htdocs下的,而我的jileiba.com是放在websites目錄下的,我這樣做是為了方便統一管理.NET和PHP站點,現在要為phpdemo.jileiba.com配置虛擬目錄。有幾個地方需要更改的。

  • 更改httpd.conf,啟用vhost模塊(如果前面有#請去掉它,然后保存並重啟apache服務

image

  • 修改extra文件夾中的httpd-vhost.conf文件,注意黃色的部分一定要啟用,否則所有在apache中設置的域名仍然會指向同一目錄

image

有些地方說直接修改httpd.conf文件,而我這里修改的是/extra/httpd-vhosts.conf文件,是因為在httpd.conf文件中包含了這樣一行代碼:

image

3.  添加asp.net站點

wordpress和phpdemo運行在apache環境下,csdemo當然要運行在IIS下,由於apache已經占用了80端口,而我只有一個ip。那么我就將csdemo的端口設置為81端口,以csdemo.jileiba.com:81進行訪問(Note:防火牆中一定要將81端口添加為例外,否則外網不可訪問

image

但是有點兒麻煩的是,每次訪問csdemo都要在后面加個端口81,我想把這個后綴端口81去掉。


注意:
i.  IIS提供了FastCGI擴展【效率高、穩定、單線程】和ISAPI擴展【效率較高、多線程、但不穩定】能讓PHP運行在IIS下,FastCGI是我曾經使用過的一種方式,運行php網站很穩定,但在這里我已經限定了apache作為php服務器,iis作為.net服務器。
ii.  如果服務器擁有兩個ip,可以讓apache和iis共存於80端口,不過iis要借助httpcfg工具添加偵聽ip,這樣才能讓兩個同時偵聽80端口的服務啟動時不會發生沖突

解決這個小問題,還是要借助apache服務器,apache服務器有一個代理模塊,讓它為iis代理,可以在訪問csdemo站點時自動轉到81端口。做法如下:

  • 開啟4個模塊(代理、代理連接、代理ftp、代理http)

image

  • 然后在httpd-vhosts.conf文件中添加一個虛擬主機
    注意:ProxyPass和ProxyPassReverse一定要設置成域名的方式,如果設置為ip方式例如http://127.0.0.1:81/,在訪問csdemo站點時會出現Bad Request (Invalid Host)問題

image

七.  用windows live writer發布博客到wordpress

1.  wordpress后台激活XML-PRC

image

2. 在windows live writer中添加日志賬戶

只需要兩步就可以完成了,而且也不需要指定xml-prc的地址

SNAGHTML37f4960

SNAGHTML35c0954


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM