##### JSBOARD + OOPS administartion Center #################################
#
#  Original Developer	: 躴 <redhands@linux.sarang.net>
#  Source Disturibute	:  <admin@oops.org>
#
#  CVS Server 	: 迵 <blhole@hotmail.com>
#  Homepage  	: Ǽ <http://www.kldp.org>
#  Special Thanks	:  <eunjea@kldp.org>
#			: 湬 <dimanche@dimanche.co.kr>
#			: â <winchild@kldp.org>
#
#############################################################################
#
#                              Quick Installation in JSBoard 1.1 v0.9
#
#############################################################################


ۼ :  <admin@oops.org>
Ͻ : 2001.03.03

  JSBoard 1.2 version  ġ   Ѵ.
   س JSBoard   ؿ ؼ
ƹ å   ϰ Ǵϰ ġ õϵ
ϱ⸦ ٶ.

========================      ========================

JSBoard 1.2 ʹ Ȯڰ .php3 .php  ȴ.

0.7   DB ü SQL query  
ǾǷ     ٶ.

!!!!!!!!!!!!!
Linux, FreeBSD ̿ OS ġÿ 
jsboard/README.OTHERS.OS  о  ġ 
ؾ Ѵ.

==========================================================

****   ****

  1. ȯ
    1-1. exec() Լ test
    1-2. MySQL Լ test
    1-3. web server 
  2. JSBoard ġ
    2-1. MySQL setting
    2-2.   ϱ
  3. JSBoard 
  4. JSBoard 
  5. UPGRADE
    5-1. 0.8 ̻ version upgrade
    5-2. 0.7  version upgrade
      5-2-1.  source ̿ϴ 
  6. ֽű ϱ
    6-1. ֽű  
    6-2. ֽű  
  7. Bug report

***************


1. ȯ

  Linux(Redhat, Debian) Ǵ FreeBSD  ġǾ ִ Server (ٸ NOS
     ߻ ˼ . DIY   ٶ)

  apache 1.3.x ̻

  MySQL 3.22.30 ̻ (RPM ġ  - ftp://mirror.oops.org/  
  (3.23.x  alpha version ȣȯ  ȹ )

  PHP-4.0.0 ̻(RPM ġ  - ftp://mirror.oops.org)  
  JSBoard 1.1 PHP4 Ͽ ۵ ϸ, compile ÿ Session 
    ȵȴ.

  * üũ  *

   php exec() Լ MySQL Լ Ǵ ȮѴ.

  1-1. exec() Լ test

    ϴ    ϳ . test.php Īϰڴ.
      linux󿡼 Ȯ ۵ Ѵ. ٸ Platform
    ˾Ƽ  ۵ ϴ Ȯ   ٶ.

    <?php
    echo("## exec() Լ ׽Ʈ  ##<p><br>\n\n");
    exec("echo \"exec()Լ  ۵ մϴ\"", $test);

    echo $test[0];
    ?>

       󿡼   ȣ 

    -------------------------------------------------
    ## exec() Լ ׽Ʈ ##

    exec()Լ  ۵ մϴ
    -------------------------------------------------

      Ǿ Ѵ.

  1-2. MySQL Լ test

    info.php   Ʒ   Ѵ.

    <?php
    phpinfo();
    ?>

    ׸ 󿡼 ȣ   MySQL  ִ ȮѴ.
      Ұ MySQL  ִ php ġÿ mysql θ
     ذͰ  MySQL ΰ Ʋ 쿡   ߻Ҽ
    ִ.  ǥ 찡 PHP rpm ġ ϰ MySQL source
    compile  ̴. PHP rpm ġ Ұ쿡  κ
    /usr/lib/mysql  ġϴ ̱ ̴.

      縦 ϴµ  ߻Ѵٸ ϴ Ʒ  
    Ͽ mysql socket file ġ ˾Ƴ.

    [oops@oops include]$ netstat -an | grep mysql
    unix  0   [ ACC ]  STREAM  LISTENING  589 /var/lib/mysql/mysql.sock
    [oops@oops include]$

        θ ̿Ͽ    .

    <?
    $mcheck = mysql_connect(":/var/lib/mysql/mysql.sock", "root", "$passwd");

    if ($mcheck) echo "MySQL ӿ ߽ϴ.";
    else echo "MySQL ӿ и ߽ϴ.";
    ?>

     code  󿡼 mysql  Ͽ   ޼
       Ȯ  Ѵ.

  1-3. web server 

    jsboard index file index.php ̴. php3 Ȯڸ ϱ⸦ Ѵٸ
    DirectoryIndex ڿ index.php3 ߰ ֵ Ѵ.  ph file
      ؼ httpd.conf 

    AddType application/x-httpd-php .php .php3

     .ph  ߰ ֵ Ѵ.

2. JSBoard ġ

    JSBoard 󿡼  ϵ Ǿ ֱ   ۵ϴ
    nobody     ־߸ Ѵٴ  ؾ Ѵ.
     permission  Ǹ ؾ Ѵٴ ̴!

  2-1 MySQL setting

    MySQL ó  ϴ    Ѵ. ̹  Ǿ
    ִ    ڽ ̹ Ǿ ִ κ پ ѵ Ѵ.

     ڵ 쿡   ϸ,  ڿ MySQL
     DBü  ޶ û ϸ ȴ.  DB user name,
    DB name, DB password  ˷ ޶ ؾ Ѵ.


    . ϴ MySQL ġ ϵ Ѵ. MySQL RPM Űε Ҽ ִ.

      ftp://mirror.opos.org/pub/Linux/Redhat/RPMS
      ftp://linux.sarang.net/pub/MySQL

      linux  ϴ php rpm ϴ  쿡 php rpm
      packagingҶ mysql ΰ   ߴ³Ŀ  ޶ Ƿ
      ɼ  A+P+M   Ű¡ Ѱ   .

      ҽ  쿡  Ѵ.

    . ġ  root н带 Ѵ.

      [root@home /public_html]# mysql mysql

      Reading table information for completion of table and column names
      You can turn off this feature to get a quicker startup with -A

      Welcome to the MySQL monitor. Commands end with; or \g.
      Your MySQL connection id is 1961 to server version: 3.22.32-log

      Type 'help' for help.
      mysql> use mysql;
      mysql> update user set password = password('Ʈн')
           > where user = 'root';
      Query OK, 1 row affected (0.00 sec)

      mysql> flush privileges;
      Query OK, 0 rows affected (0.00 sec)

      root password   Ŀ JSBoard  DB ü 
       ϵ Ѵ.  Ϸ

      USER̸		"",
      DB̸			"",
      н带		"н"

        Ѵ.    .  ߿
       ̰͵ ѱ۷  .   ⸦ Ѵٸ ѱ۷
      ص  . ⼭    ϱ ؼ ѱ۷ ϴ 
      ̴.

      mysql> CREATE database ;
      Query OK, 0 rows affected (0.00 sec)

      mysql> insert into user (Host,User,Password)
           > values('localhost','',password('н'));
      Query OK, 0 rows affected (0.00 sec)

      mysql> insert into db values
           > ('localhost','','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
      Query OK, 0 rows affected (0.00 sec)

         ߻Ѵٸ db table ÷ Ʒ    ٶ.

      mysql> desc db;
      +-----------------+---------------+------+-----+---------+-------+
      | Field           | Type          | Null | Key | Default | Extra |
      +-----------------+---------------+------+-----+---------+-------+
      | Host            | char(60)      |      | PRI |         |       |
      | Db              | char(32)      |      | PRI |         |       |
      | User            | char(16)      |      | PRI |         |       |
      | Select_priv     | enum('N','Y') |      |     | N       |       |
      | Insert_priv     | enum('N','Y') |      |     | N       |       |
      | Update_priv     | enum('N','Y') |      |     | N       |       |
      | Delete_priv     | enum('N','Y') |      |     | N       |       |
      | Create_priv     | enum('N','Y') |      |     | N       |       |
      | Drop_priv       | enum('N','Y') |      |     | N       |       |
      | Grant_priv      | enum('N','Y') |      |     | N       |       |
      | References_priv | enum('N','Y') |      |     | N       |       |
      | Index_priv      | enum('N','Y') |      |     | N       |       |
      | Alter_priv      | enum('N','Y') |      |     | N       |       |
      +-----------------+---------------+------+-----+---------+-------+
      13 rows in set (0.00 sec)

      Įrow   13 ƴ϶ Host, Db, User   Į
       mysql query "Y"    Ѵ.  δ MySQL
      3.23.x alpha version 3.22.25   Ʋ  ̴.

      mysql> quit
      Bye

      ̹  Ǿ ִ   ܰ ׳ ǳ ٸ ȴ.

  2-2   ϱ

     ٿε    ġ ϴ 丮 
    Ǯ Ѵ.

    $ tar xvfpz jsboard-version.tar.gz

     Ǯ jsboard-version ̶ 丮  ȴ.

    jsboard/Installer/SQL  ̵ Ͽ    Ͽ
    jsboard   table ü 鵵 Ѵ.   MySQL
     ˾ƾ Ѵ.

    $ cd jsboard-version/Installer/SQL
    $ mysql -u  -p  < mysql_ostype.sql
    Enter password: н

    Linux ڵ mysql_linux.sql  ̿Ͽ FreeBSD  
    mysql_freebsd.sql ̿ϵ Ѵ.

    table ü    ϵ ġ Ű  ϵ
    ۹̼ ϵ Ѵ. jsboard/Installer/script  root 
     ġ Ҽ ִٸ

    $ ./root.sh
    ===================================================
     Scripted By JoungKyun Kim <admin@oops.org>
     JSBoard Permission Configurations v1.0
    ===================================================

    ## Operating System : Redhat
    ## Httpd Group : nobody

    Is right follow information? [Y/N](default Y) : y <--Enter

    DONE!!!!
    $

    root.sh  ϸ   ȴ.   HTTPD ׷
    nobody ƴ϶ (debian  www-data Ǿ ִ) n Ǵ N
    ְ ׷ ̸ ٽ ϸ ȴ. Ʒ   ð̴.

    Input Ur httpd group :


    Ȥ  ڶ

    $ ./account.sh

     ϵ Ѵ.  account user  ġ Ϸ
        ִ.  db password  ִ  ȣؾ
    Ѵ. ̸ ؼ root   ڿ ϴ Ź ؾ 
     ִ. ٷ

    jsbaord/config/global.ph,
    jsboard/config/spma_list.ph,
    jsboard/admin/include/config.ph

      group  nobody  ޶ ؾ Ѵ(debian 
     www-data ؾ Ұ̰ ٸ OS 𸣰ڴ). 

    $ chgrp nobody jsboard/config/global.ph (root ؾ ϴ )
    $ chgrp nobody jsboard/config/spam_list.txt (root ؾ ϴ )
    $ chgrp nobody jsboard/admin/include/config.ph (root ؾ ϴ )

      ޶ ؾ Ѵ. ̸ ϸ Ʒ   
     ȴ. ̰ account.sh  Ŀ  ϵ̴.(Debian 
    쿡 nobody ƴ϶ www-data Ǿ Ѵ)

    -rx-rx----    accountname    nobody     config/global.ph
    -rx-rx----    accountname    nobody     config/spam_list.txt
    -rx-rx----    accountname    nobody     admin/include/config.ph

     root  ̸  ʰų Ǵ Ҽ root   

    chmod 606 config/global.ph
    chmod 606 config/spam_list.txt
    chmod 606 admin/include/config.ph

     Ͽ  ϳ Ȼ  ʴ.

    ׸  Ұ account user  ġÿ   
    ɼ  home directory   711 ؾѴ.

      script file ϰ mv, chown, chmod  shell ɾ
    ̷        ǰ 
      ϵ ġؾ ϴ  ľҼ  ̴.

       ϸ  ϵ  ġ ڸ  ȴ.

     jsboard/config/  ̵ Ͽ global.ph  DB   Ѵ.

    /***************************************************************************
      Ÿ̽  
    ***************************************************************************/
    $db[server] = ":/var/lib/mysql/mysql.sock";	//  ּ
    $db[user]   = "";				// 
    $db[pass]   = "";				// н
    $db[name]   = "";				// ̸

     κ   ָ ȴ. DB ܺο   쿡
    ":/var/lib/mysql/mysql.sock" κ DB ip address ü ϸ
    ɰ̴ ( test  ô ^^;;). ׷ mysql source compile
    鵵 mysql.sock file θ   ָ ȴ.

    socket file δ "netstat -an | grep mysql"  ˼ ִ.

3. JSBoard 

  JSBoard    Ѵ.   JSBoard ʹ  ڵμ
  admin/License  о   쿡  ϴ.

  ġ Ϸ Ǿٸ      Ѵ. 켱 ü
      Ѵ.

  http://domain.com/jsboard/admin

    ϵ Ѵ. ׷ login â ̴. JSBoard ⺻ н
   ʱⰪδ "0000"  Ǿ   н  ϵ Ѵ.

  OOPS Administration Center v1.7  ޶  ϴ  JSBoard
  ϴ DB JSboard   ʴ table   ޼ 
   Ǵ  ־ 1.7 JSBoard  ʴ table 
    ư  "Not JSBoard table" ̶ ޽ ϰ  
  Ǿ ִ.

4. JSBoard 

   CGI  upload Ͽ ȹ  ߻ ϰ ִ. 
  ܼ CGI  ڵ常  Ͽ    Ѵٴ    
   apache  file  õ ε file  ؼ   ʵ
  ϴ   Ҵ.     kldp server  
    Ư ȣü     ϴ 쿡 JSBoard 
  Ҽ ֱ        Ѵ.

     Ҽ ִ.

  <DirectoryMatch "^/.*/jsboard/data">
    AddType application/x-httpd-php3-source .phps .php .ph .php3 .cgi .sh .pl .html .htm .shtml .vbs .ins
    AddType application/x-httpd-php-source .phps .php .ph .php3 .cgi .sh .pl .html .htm .shtml .vbs .ins

    ErrorDocument 403 http://jsboard.kldp.org/ErrorMSG/error_msg.php?l=ko&c=403

    <Files ~ ".*\.ph$">
      Order allow,deny
      Deny from all
    </Files>
  </DirectoryMatch>

    ǹ̴ jsboard/data  丮 Ʒ ִ   data
  ̸ 丮 .phps .php .ph .php3 .cgi .sh .pl .html .htm .shtml .vbs
  .ins  Ȯڸ   source ϶ ǹ̸  Ұ ⿡
  н    ִ source ÷  ȵȴٴ ؾ Ѵ. 
   δ Խ 丮 ̸  ϴĿ     Ѵ.

   data  ̸ 丮 Ʒ .ph   쿡
  http://jsboard.kldp.org/ErrorMSG/error_msg.php?l=ko&c=403   ϶
  ǹ̴.

    root  Ѹ       ִ   
    ̶ ص  ڿ    ޶ ϴ° . 
   ؼ  ϳ ״ Ƹ   ̴. :-)

  ؿ     Ǳ⸦ ٶ鼭.. ׷..


5. UPGRADE

  5-1. 0.8 ̻ version upgrade

    jsboard-1.2  ū ȭ Ȯ ȭ̴.  1.1.x
    .php3  Ȯڸ  jsbaord-1.2 ʹ .php  ̸
      Ǿ. ׷ ҽ   ϸ ȵȴ.

    ϴ  丮 jsabord-1.2 version Ǯ  Ѵ. 
     Insatller/script/  ̵ Ͽ root.sh  ϵ Ѵ.
    ׸  data/ ִ  丮 1.2/data  copy ϵ
    ϰ, admin/include/config.ph  1.2/admin/include  īǸ Ѵ.

    īǸ  Ŀ ٽ Installer/script  ̵ Ŀ root_p.sh  
    ϵ Ѵ. (  root.sh  root_p.sh ƴ account.sh
     account_p.sh  ̿ؾ Ѵ.)

     config/global.ph  缳 ش.  κ   DB
     κи  ϰ   缳 ϵ Ѵ. ׸ 
    Խ ڷ  Ͽ ѹ 缳  ֵ Ѵ.

  5-2. 0.7   upgrade

    μ 0.6   0.7  upgrade  ȴ.  
     ϴ user ּ 0.6   upgrade Ŀ
    upgrade Ҽ ִ.

    ϴ 0.7    upgrade ϱ ؼ â԰
      ÷ ֽ ҽ ̿Ͽ  ۾  ־ Ѵ.
      â ҽ װ ߰ Ǿ Ƿ 
     ÷ ֽ  ũƮ jsboard °  ũƮ
    ̿ϴ  ϵ Ѵ.  ũƮ http://jsboard.kldp.org
     ڷǿ Ҽ ִ.

     Ұ upgrade ġ Խ   б   
    ٴ ޼ ü ִ. ̴  Խ  ʱȭ Ǿ
     ̴  Խ ڷ   ٽ  ָ ȴ.

    *  ũƮ Ҷ timeout error ߻ 쵵 ִ.
    * ̴ php.ini    ð 30ʷ  Ǿ ֱ ̴
    *  ð ÷ ְ apache  ٽ ѹ  
    * ٶ.  ٰ ̸    ߺ ش
    *  ϱ ٶ.

    5-2-1.  ũƮ ̿ upgrade

      ڵ ۼ : 躴
      ڵ  : 
       ۼ : 

      http://jsboard.kldp.org/bbs/read.php?table=bbs_download&no=30&page=1
       convert.phps ٿ     convert.php3 Ǵ
      convert.php  ϵ Ѵ.    󿡼  Ҽ
      ִ 丮 ̵ Ѵ. convert.php ͷ   7°
        $new_fiile = "../tmp/$table.sql"; κп ../tmp κ
      nobody   ִ Ȯ Ѵ.  /tmp/$table.sql 
       ϴ   ҵ ϴ. ׸ $new_file ٷ ܿ
      user, pass, name  ֵ Ѵ.

          Ѵٸ ϴ web root /home/httpd/html
      ̶  Ѵ. ׸ /home/httpd/html/convert  丮
      Ѵ. convert  nobody ⸦ Ҽ ְ ϱ Ͽ

      chmod 777 convert

       Ѵ.  ٿε  ҽ ش ҽ convert
      convert.php  ̸  .  convert.php 
       κ ϵ Ѵ.

      $db = array('server'  => 'localhost',
                  'user'    => 'db user name ִ´',
                  'pass'    =>	'db password ִ´',
                  'name'    =>	'db ̸ ִ´' );

      $new_file = "./$table.sql"; //  丮 Ѵ.

          ָ ȴ.

       ڽ MySQL  3.22.21  ̶ ҽ  ϴܿ
       Ʒ   ش.

      ALTER TABLE $table MODIFY idx int(6) DEFAULT '0' NOT NULL;
      ALTER TABLE $table MODIFY no int(6) DEFAULT '0' NOT NULL AUTO_INCREMENT;\n");

      κ Ʒ   ϴ ̴.

      ALTER TABLE $table CHANGE idx idx int(6) DEFAULT '0' NOT NULL;
      ALTER TABLE $table CHANGE no no int(6) DEFAULT '0' NOT NULL AUTO_INCREMENT;

       󿡼 ȯ  Խ ̸ aaa  Ѵٸ  θ
      ȣѴ.

      http://domain.com/convert/convert.php?table=aaa

      ũƮ Ϸ   $new_file   н aaa.sql ̶
        Ǿ  ̴.

        db  ϱ   ¿  Ͽ  DB 
      ϵ Ѵ.   ̿Ѵ.

      mysqldump -u USER -p DBname > backup.sql

         ϸ backup.sql ̶ ̸ DB  ȴ.
      ߿  ϰ 

      mysql -u USER -p DBname < backup.sql

        Ҽ ִ. ϴ     $table.sql ϵ
      ̿Ͽ DB ȯ ϵ Ѵ. Ʒ   . (Ʒ aaa
       Խ ȯϴ ̴. Խ     ݺ
       ֵ Ѵ)

      mysql -u USER -p DBname < aaa.sql

      ƹ ޼  ʰ prompt  ȯ  Ѱ̴.
      DB۾ Ϸᰡ Ǿ  Խ ۾ Ѵ.

        Խǰ ġ ʰ jsboard Ǯ   
      Խ   ϴ include/Խ̸  jsboard-new/data 
      copy Ѵ. ׸ jsboard-new/Installer/script  root.sh
      account.sh ̿Ͽ  ϵ ġ Ű ۹̼  
      jsboard-new/config/global.ph  DB ־ ش. 
      http://domain.com/jsboard-new/admin   Ͽ  ȣ
      "0000" ̿Ͽ α  ü   Խ   ָ
      ȴ.


6. ֽű ϱ

  6-1. ֽű  

   JSBoard ֽű  ϴ ̴.   include/prelist.ph 
     Ǹ  Ͽ  Ͽ  Ҽ ִ.

  6-2. ֽű  

   ϴ  jsboard/include/prelist.ph $prlist[path]  $prlist[wpath]
     ؾ Ѵ. $prlist[path]  JSBoard ġ Ǿ ִ 
   θ ָ, $prlist[wpath]  JSBoard µǴ θ  
   Ѵ.  Ұ  /  ʵ Ѵ.

   )
   $prlist[path] = "/home/httpd/html/PHP/jsboard";
   $prlist[wpath] = "http://domain.com/PHP/jsboard";

   ϴ  ڸ 켱 ֽű    ܿ 
     ڵ带 Ѵ. (߿    ų  php 
    ɼ ִ ̾ Ѵ. Ȯڰ .php3 php νҼ 
   쿡 .php3 file   Ҽ ִ.    
   ̶  Ʈ  κ  ̸ ȴ.)

   <?
   include "/prelist.ph";
   ?>

    Ʈ  ϴ κп   Լ  ֵ Ѵ.

   <? prelist("a","b","c","d","e","f","g","h","i"); ?>

   prelist() Լ 鿡 ؼ Ʒ ϶.

   a ̺ ̸(Խ ̸)
   b include file   ( 1 -  0 - Ծ )
      κ  ؾ Ѵ.  ϳ ԽǸ ҷ 
       1   Ѵ.   Խ 
     ҷ  쿡 ֹ° Լ ʹ  0 Ǿ Ѵ.
   c  Ʈ 
   d ±ڼ
   e ̸   ( 1 -   0 -   )
   f    ( 1 -   0 -   )
   g ̸   ( 1 -   0 -   )
   h ȸ   ( 1 -   0 -   )
   i ũ ɼ (: target onClick )


     Խ  ϰ ʹٸ  ڵ 
      Ѽ   ָ ȴ.

   )

   test Խ 3 ̸<br>
   <? prelist("test",1,3,30,1,1,1,1,""); ?>

   <p>
   test1 Խ 5 ̸<br>
   <? prelist("test1",0,5,30,1,1,1,1,""); ?>

   ⼭  Ұ ι° Խ ѷ ٶ ι° ʵ  0
   ȴٴ  Ѵ. ù° Խ ѷ ٶ 1 Ǿ ϰ,
   ι°  Խǿ 0   Ѵ.

   ϴ,    ϸ μ ƹ   پ
   ѷְ ȴ. ϴ  ϰ ʹٸ jsboard/include/prelist.ph
    ߾ӿ ִ print_prlist() Լ echo ϸ ȴ.

    table tag  쿡  ؾ   ִ.
    °  ̴.

   >

   <table>
   <? prelist(......) ?>
   </table>

      ؾ ϸ prelist.ph  print_prlist() Լ Ʒ 
    Ǿ Ѵ.

   function print_prlist($p) {
    echo "<tr>
          <td>$p[link]</td>
          <td>$p[name]</td>
	  <td>$p[date]</td>
	  <td>$p[count]</td>
	  </tr>\n";
   }

    ̺   ϳ  ϳ tr Ǳ  for Ͽ
   print_prlist() Լ ݺ Ǿ  Ǳ     Ǿ
    ϴ ̴.  ˾Ƽ ϱ ٶ.


7. Bug report

  ׸ ߰ 쿡 http://jsboard.kldp.org/bbs/list.php?table=bbs_upgrade 
    ָ ϰڴ


