はじめての自宅サーバ構築 - Fedora/CentOS -
Last Update 2018/05/30
[ 更新履歴 ] [ サイト マップ ] [ 質問掲示板 ] [ 雑談掲示板 ] [ リンク ]
トップ >> 質問掲示板

 このスレッドはクローズされています。記事の閲覧のみとなります。

 Perlのシンボリックリンクのことです
日時: 2012/11/23 12:43
名前: みかん

1.不明点・障害内容:
2.ログの有無   :
  (有:その内容) :
3.Distribution  :Centos5.9
      Version :
4.Service Name  :
      Version :
5.ネットワーク構成:
こんにちは。

こちらを参考に自サバに取り組んでいます。

質問は書きのことです、よろしくどうぞ。

CGIを実行するPerlのシンボリックリンクを貼る所まで来たのですが
# which perl
/usr/bin/perl

# ln -s /usr/bin/perl /usr/local/bin/perl

# which perl
/usr/bin/perl
になっており/usr/local/bin/perlに変更できません
どこが悪いのでしょうか?

apacheとPHPのインストールおよびapacheの設定もやっております。

メンテ

Page:  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]

■ コンテンツ関連情報

 Re: Perlのシンボリックリンクのことです ( No.21 )
日時: 2012/11/24 04:27
名前: みかん

stranger さんへ

apacheのerror_logです、とちゅうからですが・・
8)Exec format error: exec of ってなんでしょう?

[Fri Nov 23 19:11:53 2012] [error] [client 192.168.72.2] mod_mime_magic: can't read `/var/www/cgi-bin/test.cgi', referer: http://kajuhome.com/cgi-bin/patio/patio.cgi?mode=view&no=2050
[Fri Nov 23 19:11:53 2012] [error] [client 192.168.72.2] (13)Permission denied: exec of '/var/www/cgi-bin/test.cgi' failed, referer: http://kajuhome.com/cgi-bin/patio/patio.cgi?mode=view&no=2050
[Fri Nov 23 19:11:53 2012] [error] [client 192.168.72.2] Premature end of script headers: test.cgi, referer: http://kajuhome.com/cgi-bin/patio/patio.cgi?mode=view&no=2050
[Fri Nov 23 19:27:52 2012] [error] [client 192.168.72.2] (8)Exec format error: exec of '/var/www/cgi-bin/test.cgi' failed
[Fri Nov 23 19:27:52 2012] [error] [client 192.168.72.2] Premature end of script headers: test.cgi
[Fri Nov 23 19:30:14 2012] [error] [client 192.168.72.2] (8)Exec format error: exec of '/var/www/cgi-bin/test.cgi' failed, referer: http://kajuhome.com/cgi-bin/patio/patio.cgi?mode=view&no=2050&p=1
[Fri Nov 23 19:30:14 2012] [error] [client 192.168.72.2] Premature end of script headers: test.cgi, referer: http://kajuhome.com/cgi-bin/patio/patio.cgi?mode=view&no=2050&p=1
[Fri Nov 23 19:31:49 2012] [error] [client xx.xx.xx.xx] (8)Exec format error: exec of '/var/www/cgi-bin/test.cgi' failed
[Fri Nov 23 19:31:49 2012] [error] [client xx.xx.xx.xx] Premature end of script headers: test.cgi
[Fri Nov 23 19:42:19 2012] [notice] caught SIGTERM, shutting down
[Sat Nov 24 03:28:53 2012] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Sat Nov 24 03:28:53 2012] [notice] Digest: generating secret for digest authentication ...
[Sat Nov 24 03:28:53 2012] [notice] Digest: done
[Sat Nov 24 03:28:53 2012] [notice] Apache/2.2.3 (CentOS) configured -- resuming normal operations
[Sat Nov 24 03:30:39 2012] [error] [client xx.xx.xx.xx] File does not exist: /var/www/html/robots.txt
[Sat Nov 24 03:30:40 2012] [error] [client xx.xx.xx.xx] File does not exist: /var/www/html/xoops
[Sat Nov 24 03:41:21 2012] [error] [client xx.xx.xx.xx] (8)Exec format error: exec of '/var/www/cgi-bin/test.cgi' failed
[Sat Nov 24 03:41:21 2012] [error] [client xx.xx.xx.xx] Premature end of script headers: test.cgi
~

apacheの設定は下記です
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

<Directory "/var/www/cgi-bin/">
    AllowOverride All
    Options ExecCGI
    Order allow,deny
    Allow from all

AddHandler cgi-script .cgi .pl

</Directory>
メンテ
 Re: Perlのシンボリックリンクのことです ( No.22 )
日時: 2012/11/24 04:34
名前: みかん

管理者様へ

# cd /var/www/cgi-bin/
# perl test.cgi

と、やっても何もでません、やはり設定がおかしい??

>ディレクトリも参照権・実行権はありますよね?
cgi-binでしょうか? すみません分からなくて、パーミッションは755です。


drwxr-xr-x  2 root root 4096 11月 23 19:26 cgi-bin
メンテ
 Re: Perlのシンボリックリンクのことです ( No.23 )
日時: 2012/11/24 07:53
名前: 管理者

>> ディレクトリも参照権・実行権はありますよね?
> cgi-binでしょうか? すみません分からなくて、パーミッションは755です。


失礼いたしました。以下の実行結果でパーミションは755ですか?

# ls -ld /var/www/cgi-bin
メンテ
 Re: Perlのシンボリックリンクのことです ( No.24 )
日時: 2012/11/24 08:22
名前: stranger
参照: http://ja.528p.com/

perlの実体が /usr/bin/perlなら

test.cgiの先頭行を
#!/usr/bin/perl --
にしてみる
-- をつけることで改行コードの問題を回避
それでうまくいくなら
perlのパスの問題か改行コードの問題

どうしてもだめなら
linuxマシンでtest.cgiを記述してみる

httpd.confの設定は デフォルトの

ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

で動くはず
ScriptAliasでは全てのファイルをスクリプトとして実行します

ファイルが混在するなら

Alias /cgi-bin/ "/var/www/cgi-bin/"

<Directory "/var/www/cgi-bin">
    AllowOverride All
    Options ExecCGI
    AddHandler cgi-script .cgi .pl
    Order allow,deny
    Allow from all
</Directory>

Aliasの場合は
Options ExecCGIとAddHandlerの設定でファイルを指定
メンテ
 Re: Perlのシンボリックリンクのことです ( No.25 )
日時: 2012/11/24 12:00
名前: しずくちゃん

># cd /var/www/cgi-bin/
># perl test.cgi
>
>と、やっても何もでません、やはり設定がおかしい??


何もでないのは不思議ですよね。予想したように出ない場合でも、
普通、エラーメッセージ的なものは出ますよね。
(プロンプトのシャープ(#)も貼り付けたかキー入力してしまったとかなら何も出ないけど・・・
ちなみに、最初の行のシャープは実際は半角のシャープです、入力部分じゃないので関係ないですけど…)

追記:
# cd /var/www/cgi-bin/
# /usr/bin/perl test.cgi
でも何も出ないですか?

だらだら質問してすみませんが、/var/www/cgi-bin/test.cgiの最初の行を
#!/usr/local/bin/perl
から
#!/usr/bin/perl
に変更しても同じエラーがでますか?

>(8)Exec format error: exec of ...
というエラーを再現しようと自分のサーバーでいろいろやっていますが出てきません。
改行コードをCR+LFにしただけでは違うエラーになります。なんなのかしら(w
これからお出かけなので私のレスは遅れます。。
メンテ

Page:  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]

■ その他

ページ先頭へ

Copyright(©)2004-2018 First home server construction. All Right Reserved.