■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50 [PR]ぜろちゃんねるプラス[PR]  
レス数が1000を超えています。残念ながら全部は表示しません。

ぜろちゃんねるスクリプト総合質問スレ Part8

693 :名無しさん@ぜろちゃんねる:2009/03/22(日) 01:24:10 ID:DfVwvxvM0
Windows Server 2003 R2 のIIS6.0で動かしている >>649 です
>>683
管理画面すら出ないのは別の原因ですね
アプリケーションの構成
拡張子マッピング
.cgi
C:\Perl\bin\perlis.dll
とか
Webサービス拡張のPerl CGI Extensionを許可
あたりじゃないでしょうか
>>689
おそらくこの方法で行けるとおもいます

■ぜろちゃんねるをIIS6.0で動かす
問題点
・「全部見る」とか「最新50」とかが動かなかった
原因
・PATH_INFO の使用の違い
対処方法
・test\module の 「galadriel.pl」の「GetArgument」を修正する

Perlは素人なので見苦しいコードですがご容赦を
##BEFORE

sub GetArgument
{
my $this = shift;
my ($pENV) = @_;
my (@retArg,@Awork);
my ($var,$val);

if ($pENV->{'PATH_INFO'}){ # PATH_INFOあり
@Awork = split(/\//,$pENV->{'PATH_INFO'});

##AFTER

sub GetArgument
{
my $this = shift;
my ($pENV) = @_;
my (@retArg,@Awork);
my ($var,$val);
my $path; # <-Add

if ($pENV->{'PATH_INFO'}){ # PATH_INFOあり
$path = $pENV->{'PATH_INFO'}; # <-Add
# ex.
# PATH_INFO=/xxxx/test/read.cgi/info/1233491511/1-100
# SCRIPT_NAME=/xxxx/test/read.cgi
# hack to fix broken path info in IIS
if ($path =~ /$ENV{'SCRIPT_NAME'}/){ # <- Add
#$path =~ s/$ENV{'SCRIPT_NAME'}\///; # <- Add
$path =~ s/$ENV{'SCRIPT_NAME'}//; # <- Add
} # <- Add
else{ # <- Add
$path =~ s/^\///; # <- Add
} # <- Add

@Awork = split(/\//,$path); # <- change

246KB
READ.CGI - 0ch+ BBS 0.7.5 20220323
ぜろちゃんねるプラス