No.11231 投稿時間:2003年07月18日(Fri) 21:57 投稿者名:りゅうや URL:
一昨日サーバーソフトをANHTTPDからApache(Win32)に変えました。
そしたらいままで動いていたCGIスクリプトが動かなくなりました。
CGIスクリプトがテキストファイルとしてそのまま見えてしまいます。
だから管理者用のパスワードも漏れてしまいます。(CGI動いてないから意味ないけど)
(後にANHTTPDは独自解釈で動いていたことに気づく)
あぁ、何も知らずにCGIを動かしていた自分はバカだ
そこで助けていただきたい、いくつか自分のわかる範囲でスクリプトの実行ファイルの修正等(1行目)をやりましたが無理でした。
構成は
公開フォルダはD:\htdocs
pearlはC:\usr\localにインストールしました。
スクリプトの一行目は
#!/usr/local/bin/perl
にしました。
なにが悪いのでしょうか?
No.11232 投稿時間:2003年07月18日(Fri) 21:58 投稿者名:りゅうや URL:
Apacheのバージョンは2.0.47です。
No.11233 投稿時間:2003年07月18日(Fri) 22:33 投稿者名:APACHE URL:http://kemuri-net.dip.jp/~server/
ApacheはCGIの動作をさせるためには設定が必要です。
httpd.confを開き
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI Multiviews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs-2.0/mod/core.html#options
# for more information.
#
Options FollowSymLinks
となっているヶ所を
Options ExecCGI Includes FollowSymLinks
に変更します。
#AddHandler cgi-script .cgi
というヶ所を
AddHandler cgi-script .cgi
に書き換えます。
#AddType text/html .shtml
#AddOutputFilter INCLUDES .shtml
というヶ所を
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
に書き換えます。
httpd.confを保存し
Apacheを再起動します。
これでCGIとSSIが有効になっているはずです。
No.11235 投稿時間:2003年07月19日(Sat) 00:24 投稿者名:りゅうや URL:
あともうひとつお願いします。
Apacheにしてから文字化けが発生します。DOCタグ入れてないせいかとおもったらDOCタグをきちんと入れてもそうなりました。
アフォな質問だったらすみません
No.11237 投稿時間:2003年07月19日(Sat) 00:47 投稿者名:APACHE URL:http://kemuri-net.dip.jp/~server/
> あともうひとつお願いします。
CGIは動作したのでしょうか。
追加質問無いようなので動いたと解釈します。
> Apacheにしてから文字化けが発生します。DOCタグ入れてないせいかとおもったらDOCタグをきちんと入れてもそうなりました。
> アフォな質問だったらすみません
DOC?
DOCって
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
これのこと?
文字コードの指定はなら<HEAD>と</HEAD>の間に
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
これですよ。
#EUCなら
#<META http-equiv="Content-Type" content="text/html; charset=EUC-JP">
No.11242 投稿時間:2003年07月19日(Sat) 09:04 投稿者名:sugari URL:
> > あともうひとつお願いします。
> CGIは動作したのでしょうか。
> 追加質問無いようなので動いたと解釈します。
>
> > Apacheにしてから文字化けが発生します。DOCタグ入れてないせいかとおもったらDOCタグをきちんと入れてもそうなりました。
> > アフォな質問だったらすみません
多分、AddDefaultCharset が標準のままなのではないでしょうか?
これは、標準のままですと、METAタグで指定しても、無視されたと思います。
METAタグで文字コードを指定する場合は、
AddDefaultCharset iso-8859-1 の部分を、
AddDefaultCharset none と書き換えて見てください。
あとついでに、LanguagePriority の部分の ja という記述が、
LanguagePriority ja という感じで一番手前に来るように書き換えて見てください。
No.11302 投稿時間:2003年07月21日(Mon) 13:29 投稿者名:りゅうや URL:
皆さんありがとうございます。Apacheで正常にCGIや文字化けなく使えるようになりました。
(サーバーやるなら英語くらい使えないとなぁ~と思う自分)