Apache の使い方


2002.08.12
ホームディレクトリ
/home/user/   のパーミッションに注意。

デフォルトでは 700 になっている (と思った。妖しい記憶では)

apache(web server) がアクセス出来る様に、755 にしておこう。


/etc/httpd/conf/httpd.conf

tDiary, damex がローカルで使える様、修正

 # diff  httpd.conf.org  httpd.conf 
 
 > 827a828,829
 > # 2002.08.04 I added for ~/public_html/damex cgi
 > AddHandler  cgi-script  .cgi
 >
 > 1201a1204,1249
 > # I added for tdiary 2002.07.06
 > <Directory "/home/*/public_html/cgi-bin">
 >   AddHandler  cgi-script  .rb  .cgi
 >   Options  FollowSymLinks  ExecCGI
 > </Directory>
 > 
 > <Directory "/home/*/public_html/diary">
 >   AddHandler  cgi-script  .rb  .cgi
 >   Options  FollowSymLinks  ExecCGI
 >   DirectoryIndex  index.rb
 > </Directory>
 > 
 > <Files "*.rhml">
 >   deny  from  all
 > </Files>
 > 
 > <Files "tdiary.*">
 >   deny  from  all 
 > </Files>
 > 
 > <Files update.rb>
 >   AuthName  tDiary
 >   AuthType  Basic
 >   AuthUserFile /home/hoge/.htpasswd
 >   Require  user  hoge
 > </Files>
 > 
 > # I added for DAMEX 2002.07.31
 > <Directory "/home/*/public_html/damex">
 >   AddHandler  cgi-script  .cgi
 >   Options  FollowSymLinks  ExecCGI
 >   # DirectoryIndex  index.html
 >   # Options  ExecCGI
 >   # AllowOverride  None
 > </Directory>
 > 
 > # I added for Web Nikki 2002.08.16  on namazu
 > <Directory "/home/*/public_html/namazu">
 >   AddHandler  cgi-script  .cgi
 >   Options  FollowSymLinks  ExecCGI
 >   Options  ExecCGI
 > </Directory>

と、なっちょります。
それぞれの意味は、コメントを見ながら考えてちょ。


ローカルの見え方
~/public/index.html -> http://localhost/~hoge/index.html
になる。

だから、
~/public/damex/index.html -> http://localhost/~hoge/damex/index.html
ともなる。


他人が作った CGI
を、使う場合は、改行コードに注意。
  $ cat -ev tanin-no.cgi 
  > fuga fuga ^M$
と、なっていたらダメダメ。

^M -> CR
$ -> LF

UNIX 系では CR は、いりまへん。
apache が ^M を実行しようとして、でも出来なくて、ってな状態にはまります。
とっとと消しましょう。
  $ nkf -Lu 
  $ nkf -Lu -e tainin-no.cgi > unix-file 
-Lu は CR-LF の改行コードを LF に変換
-e は 出力を euc code にする
 $ perl -pe 's/\r\n/\n/' tanin-no.cgi > unix-file 
でも同じだそうだ。

あと、日本語のコードは euc の方があとあと、化けが少ないと思う。


CGI をサーバーに上げるとき
は、アスキーモードでやるべし。

lftp はデフォルトでバイナリモードになっとりまふ。
-a option を使いましょう。

それと、アスキーモードで上げると、ローカルとリモートで

ファイルサイズが異なります


理由は不明。でも、アスキーで上げたかの確認にはなるでしょう。

















戻る