現在、
HDE Linux Controller2.0
を使用してサーバを管理しているのですが、
CGIの設定ができません。
ファイルをアップしアクセスしますと

Forbidden
You don't have permission to access /cgi-bin/××××.cgi on this server.
------------------------------
Apache/1.3.22 Server at www.××××.jp Port 80


のメッセージが出てしまいます。
どのようにしたらCGIが使えるのでしょうか、教えてください。
よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

一般的なWebブラウザユーザエージェントからアクセスしたときですよね?


パーミッションがない、アクセス権がない、と怒られているエラーです。
一般ユーザ(ここではWebブラウザ)に対してファイルの実行権を与える必要があります。
よく、CGIスクリプトに対してはchmod 755 hoge.cgiとかやると思いますが、やってますか?
(一の位が一般ユーザの権限。「5」は、実行権限「1」+閲覧権限「4」の和ですよね)
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QLinuxサーバーのcgi-binの中のgifやindex.htmが表示されない

RedHat Linux9でWebサーバーをつくり、Perlを使ってCGIプログラムもアップしています。しかし、CGIプログラムは動いているのですが、cgi-binの中に入っているフォルダのgifファイルやindex.htmのファイルが表示されません。何が原因でしょうか。。
設定は特にいじってないです。

Aベストアンサー

フォルダcgi-binが、ディレクティブScriptAliasで指定されているなら、そこにあるファイルは全てCGIプログラムとみなされますので、実行権限の無いファイルは許されません。そして、たんなるHTMLファイルやimgファイルに実行権限を付けても、実行したらInternal Server Errorになるだけです。

――っていう話でがない?

QDNSサーバを構築しています。/etc/rc.d/init.d/named reloadのところでエラーになってしまいます。

RedHat Linux 9 でサーバを構築しています。
DNSサーバを作成しているところでつまづいてしまいました。

vi /etc/named.conf のところで正引き、逆引きのゾーンを追記し、
vi /var/named/**.jp.db の正引きゾーンデータベースを作成し、
逆引きの方もゾーンデータベースを作成しました。

あとは、etc/rc.d/init.d/named start とやって起動させ、
namedが自動起動するように chkconfig named on と実行しました。

しかし、設定を反映しようと、
/etc/rc.d/init.d/named reload としたのですが、
何度やっても失敗と出てしまいます。
画面には、一部を書きに記述すると、

Reloading named: usage : killall [OPTION] [--] name ・・・
   killall -l, --list
killall -V --version

-l,--list list all know signal name
-V,--version display version infomation

となっていました。
とりあえず、shutdown -r now で再起動しましたが、
設定が反映されていないようで、次の
vi /etc/resolv.conf でIPアドレスを記述したあと、
nslookup コマンドを実行してDNSサーバのテストでやってもエラーになってしまいます。
何が原因でしょうか?
長々と書いてすみません。分かる方、どうかよろしくお願いします。

RedHat Linux 9 でサーバを構築しています。
DNSサーバを作成しているところでつまづいてしまいました。

vi /etc/named.conf のところで正引き、逆引きのゾーンを追記し、
vi /var/named/**.jp.db の正引きゾーンデータベースを作成し、
逆引きの方もゾーンデータベースを作成しました。

あとは、etc/rc.d/init.d/named start とやって起動させ、
namedが自動起動するように chkconfig named on と実行しました。

しかし、設定を反映しようと、
/etc/rc.d/init.d/named reload としたのですが、
...続きを読む

Aベストアンサー

/etc/rc.d/init.d/named 内のkillallコマンドでエラーが出ています。
reloadですから、killallで一旦namedを止めて再起動するわけですが、
止めるべきnamedがもともと動いていない、と言う事では?

Q.htaccess で読み込む .htpasswd で Permission Denied

普通の教えて goo では返事がないのでこちらにも質問させていただきます。

先日、自分で構築しているサーバをいじっていたら、 .htaccess による BASIC 認証ができなくなりました。
いじったのは /etc/hosts.allow と /etc/hosts.deny ぐらい…だと思います。
たいしたことないだろうと作業記録もろくに取らずに進めてしまいました。
しばらくしてアクセス制限のかかっているページにアクセスしようとしたところ認証が通らず、.htpasswd ファイルを再度作成しなおしたものの何度正しいユーザ名・パスワードで認証が通らず 401 エラーになってしまいます。

一旦、.htaccess を削除し、以下の test.php を実行したところ
Warning: file(../test.txt): failed to open stream: Permission denied
となりました。

このプログラムを同じディレクトリ構成でレンタルサーバで実行したところ、問題なく動作します。

こんな状態で原因の特定はできますでしょうか?

以下、必要そうな情報…


● サーバ環境
Linux hostname.localhost 2.6.32-573.22.1.el6.i686 #1 SMP Wed Mar 23 00:37:12 UTC 2016 i686 i686 i386 GNU/Linux

● Apache 情報
Server version: Apache/2.2.15 (Unix)
Server built: Mar 22 2016 19:01:08

● httpd.conf
<Directory /home/*/public_html>
  :
AllowOverride All
  :
</Directory>

● ディレクトリ構成
/home/hoge
  ├.htpasswd
  ├test.txt
  └/public_html
    ├.htaccess
    └test.txt

● パーミッション等
・/hoge
-rw-r--r--. 1 hoge hoge 58 4月 18 21:31 2016 .htpasswd
drwxr-xr-x. 73 hoge hoge 4096 4月 21 13:12 2016 public_html
-rw-r--r--. 1 hoge hoge 44 4月 20 22:19 2016 test.txt

・/hoge/public_html
-rw----rw-. 1 client client 146 8月 13 17:46 2013 .htaccess
-rw----r--. 1 client client 424 4月 20 23:40 2016 test.php

● .htaccess
AuthUserFile /home/hoge/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and PASSWORD"
AuthType Basic
require valid-user

● .htpasswd
user:暗号化されたパスワード

● test.txt
1234567890
qwertyuiop
asdfghjkl;
zxcvbnm,./

● test.php
<?php
print_r( file( "../test.txt" ) );
?>

他に必要な情報があればおっしゃってください。

普通の教えて goo では返事がないのでこちらにも質問させていただきます。

先日、自分で構築しているサーバをいじっていたら、 .htaccess による BASIC 認証ができなくなりました。
いじったのは /etc/hosts.allow と /etc/hosts.deny ぐらい…だと思います。
たいしたことないだろうと作業記録もろくに取らずに進めてしまいました。
しばらくしてアクセス制限のかかっているページにアクセスしようとしたところ認証が通らず、.htpasswd ファイルを再度作成しなおしたものの何度正しいユーザ名・パスワードで...続きを読む

Aベストアンサー

次のコマンドを実行してみるとどうなりますか?
$ getenforce
$ ls -Z /home/hoge

Qcgi-binディレクトリ内のhtmlを有効にしたい

度々お騒がせしております。
本日は、Apacheの設定について
伺いたく投稿させていただきました。

apacheの設定を終え、
一通り動作するようにできたのですが、
cgi-binディレクトリに置いたhtmlや
jpg,gifといったcgi以外のファイルが
表示されません。

httpd.confによる
cgi-binディレクトリの設定でどうにかなるものと思い、
色々調べてみたのですが、
いまいち設定方法がわかりません。

以下、私の環境です。
Apacche 1.3.20
htmlディレクトリ /var/www/html/ (775)
cgi-binディレクトリ /var/www/html/cgi-bin/ (775)
現在のcgi-binディレクトリの設定
ScriptAlias /cgi-bin/ "/var/www/html/cgi-bin/"
<Directory "/var/www/cgi-bin">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
</Directory>

以上、どうかよろしくお願いいたします。

度々お騒がせしております。
本日は、Apacheの設定について
伺いたく投稿させていただきました。

apacheの設定を終え、
一通り動作するようにできたのですが、
cgi-binディレクトリに置いたhtmlや
jpg,gifといったcgi以外のファイルが
表示されません。

httpd.confによる
cgi-binディレクトリの設定でどうにかなるものと思い、
色々調べてみたのですが、
いまいち設定方法がわかりません。

以下、私の環境です。
Apacche 1.3.20
htmlディレクトリ /var/www/html/ (775)
cgi-binディレクトリ ...続きを読む

Aベストアンサー

ScriptAlias設定とは、そういう挙動をするものと認識していますが、、、
500 Internal Server Errorになると思います。


ScriptAlias以外の場所でOprions +ExecCGIすれば混在できると思います(多分?)。

# 違っていたらごめんなさい、、、

Qcgi-bin配下のファイルに読込許可を!

最近、Apache2を使い始めたばかりで設定がよくわかりません。

Apacheの設定ファイルで、httpd.confというファイルがありますが、その中で、
ScriptAlias /cgi-bin/ "C:/Apache2/htdocs/cgi-bin/"
<Directory "C:/Apache2/htdocs/cgi-bin">
AllowOverride None
Options All
Order allow,deny
Allow from all
</Directory>
と記述して"C:/Apache2/htdocs/cgi-bin"配下にあるファイルに
CGIが動作するように許可しました。
しかし、これだと逆に"C:/Apache2/htdocs/cgi-bin"配下にある
HTMLファイル(.htm等)が読み込めなくなってしまいます。
cgi-bin配下にあるhtmlファイルも表示できるように許可を
出したいのですが、どのように設定すればよろしいのでしょうか?

Aベストアンサー

一般的に、cgi-bin配下に、HTMLファイルをおくような事はしないと思います。

出来合いのcgiスクリプトで、スクリプトとHTMLファイルを一緒に置かねばならないというのであれば、cgi-bin以外のフォルダを別途作成し、AddHandlerで指定した方が良いかと。

参考URL:http://tohoho.wakusei.ne.jp/wwwxx048.htm


このカテゴリの人気Q&Aランキング

おすすめ情報