Apache: 2008年12月アーカイブ
Perl/CGIをWindows+Apache+ActivePerlで開発して、本番環境はLinuxで動かすような場合、
Perlスクリプトの1行目を環境に応じて書き換える必要がありますよね。
書き換え忘れてLinux上で動かないことがありますよね。
そこで、#!/usr/bin/perlのままWindows + Apacheで動かす方法がないか調べてみたら、ありました。
しかし上記のやり方だと私の環境ではエラーが出たので、
下記のようにやったら見事に動きました。
かんたん!!
しあわせ!!
う~んどうすればよいのやら。。。
Perlスクリプトの1行目を環境に応じて書き換える必要がありますよね。
#!/usr/bin/perl (Linuxの場合)
↓
#!c:¥perl¥bin¥perl (Windowsの場合)
これって不便ですよね。書き換え忘れてLinux上で動かないことがありますよね。
そこで、#!/usr/bin/perlのままWindows + Apacheで動かす方法がないか調べてみたら、ありました。
しかし上記のやり方だと私の環境ではエラーが出たので、
下記のようにやったら見事に動きました。
前提条件:
- ActivePerlがC:¥perl¥bin¥perlにインストールされている。
- 同じくCドライブにApacheがインストールされている。
やり方
- C:¥usr¥bin というフォルダを作る。
- C:¥perl¥binの中の perlperl5.10.0exe, perl510.dll perl.exeの3つのファイル(数字はバージョンによって異なります)を
c:¥usr¥binにコピーして置く。 - httpd.confの最下行に1行書き加える。
- Apacheを再起動
SetEnv PERL5LIB C:/perl/site/lib
SetEnv PERL5LIB C:/perl/lib
かんたん!!
しあわせ!!
【追記】2008.12.7
どうもこのやり方だと、1行目のSetEnvが2行目のSetEnvによって上書きされてしまい、1行目が無効になっているようです。う~んどうすればよいのやら。。。