在windows 上安裝bugzilla

來源:互聯網
上載者:User
 在網上找了一些如何在windows 上安裝bugzilla的文章,感覺不是太麻煩,就是細節不太清楚,花了幾天時間終於在windows 2003上安裝好了bugzilla,把我的安裝過程詳細的寫下來,這樣大家就不用走彎路了。這篇文章只針對bugzilla 2.18rc3,別的版本我沒有試過。另外,我也不懂perl指令碼。


一、安裝Mysql

1、下載Mysql(http://www.mysql.com/),我下載的是mysql-4.0.15-win.zip,直接安裝即可。同時可以下載安裝MySQL Administrator 1.0,這是mysql的管理軟體,挺好用的。

2、修改mysql的root使用者密碼

E:\>cd mysql

E:\mysql>cd bin

E:\mysql\bin>mysql -u root mysql

mysql>UPDATE user SET Password=PASSWORD('<new_password'>) WHERE user='root';

mysql>FLUSH PRIVILEGES;

其中<new_password>為root使用者的新密碼。更改密碼後,要用root使用者訪問mysql,必須使用mysql -u root -p,按提示敲入正確的root密碼。

3、建立bugs使用者,並賦給相應的許可權

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,INDEX, ALTER,CREATE,DROP,REFERENCES,LOCK TABLES,CREATE TEMPORARY TABLES ON bugs.* TO bugs@localhost IDENTIFIED BY '<bugs_password>';

mysql> FLUSH PRIVILEGES;

要記住bugs使用者的密碼,在下面的bugzilla設定檔要用。

4、建立bugs資料庫

mysql>create database bugs;

二、下載Bugzilla(www.bugzilla.org)

現在最新版是bugzilla-2.18rc3,下載下來後解壓到e:\Bugzilla

三、安裝Perl (這一節可以參考bugzilla的文檔)

1、下載ActivePerl(http://www.activestate.com/),我下載的是ActivePerl-5.8.4.810-MSWin32-x86.msi,安裝到e:\Perl(安裝路徑可自定,以下同)

在e:\bugzilla目錄下執行

e:\bugzilla>perl checksetup.pl

此指令碼會檢查需要的模組是否已經安裝,同時初始化資料庫,最後要求輸入管理員的郵件地址、使用者名稱和密碼。第一次會說連不到資料庫,找到e:\Bugzilla\localconfig檔案,開啟找到$db_pass = '';這一行,在引號中填入前面一步中給bugs使用者指派的密碼,儲存。

仔細看返回的提示資訊,看看哪些模組還沒有安裝。然後,安裝必須的模組,先執行

c:\>ppm repository add oi http://openinteract.sourceforge.net/ppmpackages

然後用以下命令安裝:

c:\>ppm install <模組名>

如果你要安裝可選的模組:

執行以下命令添加下載模組的地址

C:\>ppm rep add glob http://glob.com.au/ppm

然後用以下命令安裝:

c:\>ppm install <模組名>

每個模組安裝成功後會顯示類似下面一行的資訊:

Successfully installed AppConfig version 1.52 in ActivePerl 5.8.4.810.

四、配置IIS

1、開啟控制台->管理工具->Internet Information Services, 再Default Web Site右鍵選擇Properties-> Home Dictory-> Configuration,在App Mappings中可以看到副檔名為.pl和.plx的檔案已經添加到了這裡面,雙擊.pl這一行,開啟其屬性對話方塊,在“動作”中選“全部動作”,同樣修改.plx這一行;然後再添加一行,參數如下:

可執行檔: D:\Perl\bin\perl.exe -T "%s" %s

副檔名: .cgi

動作: 全部動作

注意:這個“-T”一定要加,否則訪問時會報錯:Too late for "-T" option at e:\bugzilla-2.18rc3\index.cgi line 1.(網上很多文章都沒有提到這個,害我找了半天)

2、在Default Web Site右鍵選擇“建立-》虛擬目錄”,你可以給這個虛假目錄起一個名字,例如“bugzill”,指向e:\Bugzilla目錄,在預設頁中加入“index.cgi”。

3、開啟瀏覽器,在地址欄輸入:http://localhost/bugzilla,看到bugzilla的頁面就表示安裝成功,現在可以正常使用了。

五、郵件發送配置

由於bugzilla預設使用的是sendmail來發送郵件的,在windows上要想能發送郵件還要修改幾個地方。

1、開啟e:\bugzilla-2.18rc3\目錄下的CGI.pl、\Bugzilla\BugMail.pm和\Bugzilla\Token.pm檔案,找到如下內容(可能略有不同):

    open SENDMAIL, "|/usr/lib/sendmail -t -i";

    print SENDMAIL $msg;

    close SENDMAIL;

換成

 use Net::SMTP;

 my $smtp_server = 'smtp.163.com';  # 這裡換成你自己使用的郵件伺服器地址

 # Use die on error, so that the mail will be in the 'unsent mails' and

 # can be sent from the sanity check page.

 my $smtp = Net::SMTP->new($smtp_server) ||

   die 'Cannot connect to server \'$smtp_server\'';

 $smtp->auth('youname@163.com', 'password') or die "auth error\n";   # 這裡換成你自己使用的郵件伺服器上的使用者名稱和密碼

 $smtp->mail('younam@163.com'); # 這裡換成你自己使用的郵件地址

 $smtp->to($login); #注意這裡,每個檔案中的login參數名稱是不一樣的

 $smtp->data();

 $smtp->datasend($msg); #注意這裡,每個檔案中的msg參數名稱是不一樣的

 $smtp->dataend();

 $smtp->quit;

2、安裝perl的 Net::SMTP 模組

在DOS視窗中,執行以下命令添加下載模組的地址

C:\>ppm rep add glob http://glob.com.au/ppm

然後用以下命令安裝:

c:\>ppm install Net::SMTP

會提示說找到了多個模組(有3個),並列出這些模組的名稱

3、根據上一步中列出的模組名稱,再次用ppm install<模組名> ,把列出的這三個模組全部安裝上。

4、把下面的內容儲存到c:\test.pl檔案中,

#test.pl

#!/usr/local/bin/perl -w   

use Net::SMTP;   

$smtp = Net::SMTP->new('smtp.163.com');    # 這裡換成你自己使用的郵件伺服器地址

    $smtp->auth('yourname@163.com', 'password') or die "auth error\n"; # 這裡換成你自己使用的郵件伺服器上的使用者名稱和密碼

    $smtp->mail('yourname@163.com'); # 這裡換成你自己使用的郵件地址

    $smtp->to('yourname@163.com'); #這裡是接收地址

    $smtp->data();      

    $smtp->datasend("To: yourname@163.com\n");

    $smtp->datasend("\n");

    $smtp->datasend("中文內容一\nsecond line\n第三行third line");

    $smtp->dataend();   

    $smtp->quit;

然後運行 c:\>perl test.pl

5、到你的郵箱中看看是不是收到了一封新郵件?收到了就表示郵件可以正常工作了。如果沒有收到,檢查2、3、4步。

六、漢化

1、把e:\bugzilla-2.18rc3\template\en 在原目錄下複製一份,目錄為e:\bugzilla-2.18rc3\template\cn。

到http://www.sourceforge.net,找到bugzilla-cn,目前版本只有2.17.99,不過一樣可以使用(有部分頁面會和2.18不一樣),檔案名稱是:bugzilla-2.17-cn-0.99-withCSS.tar.gz。下載下來後解開到e:\bugzilla-2.18rc3\template目錄下,覆蓋cn目錄下的檔案。

2、開啟瀏覽器,在地址欄輸入:http://localhost/bugzilla,點擊頁面下方的“Parameters”連結,修改其中的“languages”和“defaultlanguage”的屬性值為“cn”,提交頁面,就可以看到中文頁面了,如果沒有看到中文,重新整理一下就應該可以了。


參考:

http://www.kuihua.net/bbs/dispbbs.asp?boardid=1&rootid=1035&id=1035&star=1&skin=

http://blog.csdn.net/ycw/archive/2004/02/07/4187.aspx

http://blog.csdn.net/s00n/archive/2004/09/20/111065.aspx

作者Blog:http://blog.csdn.net/acsu/

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.