GCC-3.3系による開発環境の導入 Edit

  • セルフコンパイル環境の導入
    landisk:/# apt-get install dpkg-dev
    landisk:/# apt-get install binutils gcc g++ make libncurses5-dev
  • includeファイルの小変更
    gcc-3.3では"__thread"が予約語扱いになったため、 以下のincludeファイルを次のように変更する。
    cp /usr/include/bits/sigthread.h   /usr/include/bits/sigthread.h_
    cp /usr/include/pthread.h         /usr/include/pthread.h_
    perl -pi -e s'/__thread/__thread_param/' /usr/include/bits/sigthread.h
    perl -pi -e s'/__thread/__thread_param/' /usr/include/pthread.h
    
  • コンパイルしてみる
    landisk:/# mkdir -p /home/src/hello
    landisk:/# cd /home/src/hello
    landisk:/home/src/hello# echo 'main(){printf("Hello World\n");}' > hello.c
    landisk:/home/src/hello# gcc hello.c -o hello
    landisk:/home/src/hello# ./hello
    Hello World
    と表示されればOK。

Emacs21とAnthyによるプチ日本語化 Edit

Emacs上で日本語が読み書きできる最小限の環境を構築します。

  • インストール
    Emacs21とかな漢字変換エンジンanthyをインストールします。
    landisk:/# apt-get install emacs21 anthy anthy-el
    
  • /root/.emacs
    .emacsファイルを下記内容でホームディレクトリに作成します。
    (set-language-environment "Japanese")
    (load-library "anthy")
    (setq default-input-method "japanese-anthy")
    
    (setq default-frame-alist '( (font . "7x14" ) ))
    (global-font-lock-mode t)
    
  • 動作確認
    一旦emacsを終了して、再起動します。
    "C-\"(コントロールキーを押しながら\)をタイプするとAnthyが起動します。
    そして、コマンドライン行に<Anthy :あ>と表示されればOKです。

    anthy.png

Apache、MySQL、PHPによるWEBプラットホーム構築 Edit

  • はじめに
    LANDISK上にWEBアプリケーション・プラットホームを構築して、インターネット上にホームページ等を公開することを目指します。
    本節でインストールするソフトウェアを簡単に説明しておきます。
    ちなみに、Linux,Apache,MySQL,PHP or Perlで構築されたプラットホームを、その頭文字をとってLAMPと呼ぶそうです。
  • 導入準備
    • 共有名『www』の作成
      注意:/mnt/hda3/debian_start実行時に、LANDISKオリジナルのApacheを停止させています。 従って、LANDISKを再起動させた後に行ってください。

      外部公開用のホームページエリアを『www』下に作ることにします。
      LANDISKの管理者用メニューから、「高度な設定」→「共有設定」→「追加」を選んで、
      共有名『www』を作成します。
      本『www』を外部からhttp://MY_LANDISK/www/でアクセスするものとして、説明していきます。

      ちなみに『www』は、debian環境からは/share/www/からアクセスでき、
      LANDISK環境からは、/mnt/hda3/share/www/からアクセスできます。

    • LANDISKに付属するApacheの停止
      /mnt/hda3/debian_startスクリプトを用いてdebian環境を起動させた場合は、
      既に停止しているため不要ですが、念のために書いておきます。

      ApacheはLANDISKに付属しますが、ここではdebianに含まれる物を使用するため、
      オリジナルのApacheは停止させておきます。
      LANDISK環境で次のコマンドを実行します。
      # /etc/rc.d/init.d/S95httpd stop

  • インストール
    apt-getで一気に入れてしまいます。
    各種の詳細設定はその後、行います。
    landisk:/# apt-get install apache
    landisk:/# apt-get install mysql-server
    landisk:/# apt-get install php4 php4-mysql php4-cgi
    landisk:/# apt-get install turck-mmcache
    
    補足:Perl用DBI/DBDインタフェースも同時にインストールされます。

  • /etc/apache/httpd.conf (Apache設定ファイル)の編集
    /share/www を http://hostname/www/でアクセスするように設定しました。
    お好みに応じて変更してください。
    142行目付近
    MinSpareServers 2    ←気持ち少なめに
    MaxSpareServers 4    ← 同上
    StartServers 2       ← 同上
    
    332行目付近
    Alias /www/ "/share/www/"
    <Directory "/share/www">
        Options MultiViews FollowSymLinks ExecCGI     ←CGIが使えるように(邪道?)
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    
    372行目付近
    <IfModule mod_dir.c>
        DirectoryIndex index.html index.htm index.shtml index.cgi index.php
    </IfModule>
    
    818行目付近、コメントを削除
        AddHandler cgi-script .cgi .sh .pl 
    
    849行目付近
    AddDefaultCharset Off
    
  • /etc/mysql/my.cnf (MySQL設定ファイル)の編集
    値を小さめに設定しました。
    42行目付近
    set-variable	= key_buffer=1M
    set-variable	= max_allowed_packet=1M
    set-variable	= thread_stack=64K
    
    65行目付近
    [isamchk]
    set-variable	= key_buffer=8M
    
  • /etc/php4/apache/php.ini (php設定ファイル)の編集
    turck-mmcacheの値を小さめに設定しました。
    1081行目付近
    mmcache.shm_size="4"                           	; turck-mmcache
    
  • /etc/php4/cgi/php.ini (php設定ファイル)の編集
    turck-mmcacheの値を小さめに設定しました。
    1081行目付近
    mmcache.shm_size="4"                           	; turck-mmcache
    
  • 再起動
    apacheを再起動する前に、httpd.confのチェックします。
    landisk:/# apachectl configtest
    Syntax OK
    
    OKなら再起動します。
    landisk:/# /etc/init.d/apache restart
    Restarting apache.
    
    landisk:/# /etc/init.d/mysql restart
    Stopping MySQL database server: mysqld.
    Starting MySQL database server: mysqld.
    
  • 動作確認
    • Apache、PHP、MMCacheの動作確認
      /share/www/phpinfo.php を以下の内容で作成して、
      <? phpinfo(); ?>
      ブラウザでphpinfo.phpをアクセスすると、次のようなphpの情報が画面に出力されます。

      phpinfo1.jpg

      さらにphpinfoにMMCacheの項目が現れていることを確認します。

      phpinfo2.jpg


  • MySQLの動作確認
    mysqlshowコマンドを実行して、次のようなデータベースが表示されればOKです。
    landisk:~# mysqlshow
    +-----------+
    | Databases |
    +-----------+
    | mysql     |
    | test      |
    +-----------+
    
  • MySQLのrootパスワード設定
    MySQLのrootパスワードを設定しておきましょう。
    (注意:MySQLのrootパスワードであり、debianのrootパスワードではありません。)
    landisk:~# mysqladmin -u root password 'MySQLのrootパスワード'
    
    設定したパスワードでアクセスできるか確認しておきましょう。
    landisk:~# mysql -u root -p
    Enter Paaword: MySQLのrootパスワード
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 40 to server version: 3.23.49-log
    
    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
    
    mysql> exit
    Bye
    landisk:~# 
    

  • 付録: MySQLデータベースの作成方法
    ユーザ名 user 、パスワード passwd というアカウントで、データベース testdb を作成する例を示します。
    landisk:~# mysql -u root -p
    Enter password:         ← MySQLのrootパスワード
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 173 to server version: 3.23.58
    
    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
    
    mysql> create database testdb;
    Query OK, 1 row affected (0.09 sec)
    
    mysql> grant all on testdb.* to user@localhost identified by "passwd";
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> exit
    Bye
    landisk:~# 
    
    できたか確認してみます。
    landisk:~# mysqlshow -uuser -ppasswd testdb
    Database: testdb
    +--------+
    | Tables |
    +--------+
    +--------+
    landisk:~# 
    
Counter: 1437, today: 1, yesterday: 0

添付ファイル: filephpinfo2.jpg 53件 [詳細] filephpinfo1.jpg 56件 [詳細] fileanthy.png 70件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-06-13 (火) 20:02:27 (6534d)