回精華區
作者SnowWolf.bbs@xeon.tfcis.org (靜夜) 看板: plan
標題[文件] BLog for itoc-maple 系統安裝----1
時間動力核心 (Sun, 07 Sep 2003 23:13:16 +0800 (CST)) Updated: 2004/03/11
這篇文章在描述怎麼架設 PttBlog, 最後一次修正的時間為:
$Id: INSTALL,v 1.4 2003/07/06 03:58:43 in2 Exp $

請注意,  PttBlog本來主要是設計給 Ptt2 站台使用, 目前正在開發階段,
並未接受嚴密的測試, 可能還缺少很多功能, 以及可能有許多的 bug.

您可以按照下列的步驟安裝好 PttBlog.
1.安裝好下列的東西, 我們並同時列上 FreeBSD ports內的目錄:
        apache          /usr/ports/www/apache13/
        perl            /usr/ports/lang/perl5.8/

  安裝mod_perl先用perl -v確認一下版本是否是5.8.0

        mod_perl        /usr/ports/www/mod_perl/
        mysql           /usr/ports/databases/mysql323-server/

  以及下列的 module

        Template        /usr/ports/www/p5-Template-Toolkit/
        Date::Calc      /usr/ports/devel/p5-Date-Calc/
        DBI             /usr/ports/databases/p5-DBI/
        DBD::mysql      /usr/ports/databases/p5-DBD-mysql/
        MD5             /usr/ports/security/p5-MD5/
        Mail::Sender    /usr/ports/mail/p5-Mail-Sender/
        OurNet::FuzzyIndex (還沒有進 ports, 請用 cpan 裝)

     [注意]請確認你安裝module時是用perl 5.8.0

2.設定 apache 可以直接透過 mod_perl 來跑 perl script .
  在您的 apache.conf (or httpd.conf)中, 應該會有:
        LoadModule perl_module        libexec/apache/libperl.so
        AddModule mod_perl.c
  在<IfModule mod_mime.c></IfModule>中間, 加上這兩行:
        AddHandler perl-script .pl
        PerlHandler Apache::Registry

3.以 bbs 身分建立下列目錄

        mkdir /home/bbs/blog
        mkdir /home/bbs/blog/web
        mkdir /home/bbs/blog/data
        mkdir /home/bbs/blog/cache

    web是要apache可以讀取
    cache是要apache可以讀取、寫入
    data是要apache可以讀取

    可是data裡面的資料是bbs用builddb.pl產生的
    權限通常是700 這個地方要再修改一下程式 或是懶一點乾脆
    把 Apache 的 user/group 都改成bbs @_@

  其中 blog/web 裡面至少要有 index.pl, blog.pl, LocalVars.pm
   (其中 LocalVars.pm 建議用 symbolic link 到 /home/bbs/bin/的那一份)
  其中 *.pl 的權限要是可以執行的 (ex: chmod 755 *.pl)

4.設定 apache 指到 blog 的目錄. 並將該目錄開始 ExecCGI的 option.
  例如使用 Virtual Host :

   NameVirtualHost *
   <VirtualHost *>
       ServerName    blog.xxxx
       DocumentRoot  /home/bbs/blog/web
     <Directory "/home/bbs/blog/web">
       Options ExecCGI
     </Directory>
   </VirtualHost>


  如果你有兩個ServerName,也可以用

    NameVirtualHost *

    <VirtualHost *>
        ServerName    blog.xxxx
        DocumentRoot  /usr/local/www/data
    </VirtualHost>

    <VirtualHost *>
        ServerName    blog2.xxxx
        DocumentRoot  /home/bbs/blog/web
      <Directory "/home/bbs/blog/web">
        Options ExecCGI
      </Directory>
    </VirtualHost>

  這樣blog.xxxx跟blog2.xxxx就可以分別連到不同目錄

  還有 <IfModule mod_dir.c> 這個地方記得把index.pl加入

5.將 builddb.pl, BBSFileHeader.pm 拷貝進 ~bbs/bin
  您可以嘗試用 perl -c ~bbs/bin/builddb.pl  測試看看能不能過.
  若不行的話, 通常是 LocalVars.pm 裡面少東西,
  請參考 pttbbs/sample/LocalVars.pm 的 blog 區.

  [注意]就算通過測試Apache讀取時也可能出現問題,Apache如果不能正常運作perl

        請檢查http記錄檔,可能是有module漏裝了,或是載入module出現問題

6.關於 Mysql共須要下面兩個 table (可以直接複製過去跑)
        CREATE TABLE `comment` (
          `brdname` varchar(13) NOT NULL default '',
          `artid` int(11) NOT NULL default '0',
          `name` varchar(32) NOT NULL default '',
          `mail` varchar(64) NOT NULL default '',
          `content` text NOT NULL,
          `mtime` int(11) NOT NULL default '0',
          `hash` varchar(32) NOT NULL default ''
        ) TYPE=MyISAM;

        CREATE TABLE `counter` (
          `k` char(32) NOT NULL default '',
          `v` int(11) NOT NULL default '0',
          `mtime` int(11) NOT NULL default '0',
          PRIMARY KEY  (`k`)
        ) TYPE=MyISAM;


--
=[:摃�◣�:Origin ]|[     O�processor.tfcis.org    ]|[�搟說:]=
=[:摃�╱�:Author ]|[     140.127.38.223                  ]|[�:]=
精華選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻