- ベストアンサー
Apacheのアドレス短縮
私、Apacheを使用して自宅サーバーを運用しているのですが少し問題点が生じたのでご質問させていただいております。 http://localhost/cgi-bin/bbs/bbs.cgiと表示されるのをhttp://localhost/bbs/bbs.cgiもしくは、http://localhost/bbs.cgiとApacheの設定を変えるだけで表記できますでしょうか?ご存知のかたがいらっしゃいましたら方法をお教え下さい。
- sanber
- お礼率30% (28/91)
- ハードウェア・サーバー
- 回答数3
- ありがとう数0
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
自信ありませんが、 mod_rewriteというApacheモジュールを使えばできそうです。 (リクエストされたURLを置き換えて処理します。) httpd.confに下記の行を追加。 LoadModule rewrite_module modules/mod_rewrite.so httpd.confに下記の行を追加。 RewriteEngine On RewriteRule /(bbs/)?bbs\.cgi /cgi-bin/bbs/bbs.cgi [S] Apacheをリスタート。 私の答えも生半可な回答なので、 「mod_rewrite」で調べてやってみてください。
その他の回答 (2)
- 春原 なの(@ymda)
- ベストアンサー率37% (668/1777)
表記をかえる前に、そのスクリプトの位置の変更も必要ですが・・(念のため)・・・ 通常、Apacheの場合、デフォルトインストールでは /cgi-bin 以下のみCGIスクリプトの 実行が許可されています。 ようするに、他のディレクトリでは一切許可されていないということです。 CGIを許可するには <Directory /usr/local/apache2/htdocs> (http://localhost/ が置いてある場所 この中に Options の行がありますので、ExecCGI を加えます。 その他、 #AddHandler cgi-script .cgi のコメント(#って文字)を削除して下さい。 最近似たような質問に回答したので、参考までに・・・ http://okweb.jp/kotaeru.php3?q=1497016
- 2NN
- ベストアンサー率40% (143/353)
http://localhost/cgi-bin/bbs/bbs.cgiに http://localhost/bbs/bbs.cgi かhttp://localhost/bbs.cgi でも アクセスできるようにしたいということでしょうか? また、自宅サーバーのOSはなんでしょうか? 補足お願いします。
関連するQ&A
- Apacheでのcgi使用についてなんですが・・・
windowsPCにApacheを組み込んでWWWサーバーとして使用していますが一つ問題が発生したのでどうかお力を分けてくださらないでしょうか? その問題というのは、Apacheで掲示板のcgiが使えないのです。httpd.confをcgiが使えるように書き換えましたし、別のAN HTTPDというサーバーソフトではちゃんと掲示板として機能します。cgi-binの中はcgiが使えるように設定したのですがやはりcgi-bin/bbs/bbs.cgiとするとCGIは動かなくなるのでしょうか?
- ベストアンサー
- その他(ITシステム運用・管理)
- Apacheの設定について
WindowsXP SP2 のローカルでCGIを動作させるために http://www.adminweb.jp/apache/ を参考に下記を試みました。 (1)Apache ダウンロード・インストール・接続確認 「http://localhost/」へアクセスして「It works!」表示確認 (htdocs ディレクトリの index.html) (2)ActivePerlインストール perl -v perl -h で動作確認 (3)CGI用エイリアスの設定 ScriptAlias /cgi-bin/ "C:/SERVER/Apache/cgi-bin/" (4)以下の test.pl を C:/SERVER/Apache/cgi-bin/ に設置 ------------------------------------------------------ #!C:/Perl/bin/perl.exe print "Content-type: text/html;\n\n"; print "<html><body><h1>test cgi</h1></body></html>\n"; ------------------------------------------------------- http://localhost/cgi-bin/test.pl の実行で 「Internal Server Error」になってしまいます。 どこの設定が間違っているのか見当がつきません。 何卒ご指導宜しくお願い致します。
- 締切済み
- ハードウェア・サーバー
- Apacheの設定の問題でしょうか?
Windows XPにApacheをインストールしてサーバーにしています。 ブラウザからcgiファイルを呼び出す以下のメッセージが表示されます。 Windowsサーバーはパーミッションの設定は必要ない思っているのですが、どなたか何が原因かお分かりでしょうか?ご教授願います。 (呼び出しURL) http://hostname/~******/cgi-bin/******.cgi Forbidden You don't have permission to access /~*******/cgi-bin/*****.cgi on this server. -------------------------------------------------------------------------------- Apache/1.3.24 Server at localhost Port 80
- 締切済み
- CGI
- Apacheのcgi-bin
ApacheでCGIを実行するためのフォルダをcgi-binとしたのですがアドレスがなんかややこしくて困っております。 その際、http://locallhost/cgi-bin/bbs/bbs.cgiとアドレスがなるのですが、これをhttp://locallhost/bbs/bbs.cgiと変えることは可能でしょうか? また、KENT-WEBさんがご提供されていらっしゃるpostmailというCGIをApacheで表示しようとするとエラーが出てしまいます。cgiは動くのですが、中に同梱されているhtmlは表示してくれません。これは、cgi-binの外にhtmlを出さなければいけないのでしょうか?よろしくお願いします。
- ベストアンサー
- ハードウェア・サーバー
- Apache
Windows2000proとApache2を使用してWWWサーバーを構築しております。問題が生じてしまいましたのでどうかお力を貸していただけないでしょうか? 問題とは、http://***/cgi-bin/bbs/bbs.cgiとcgiへの道が表示されているのを出来るだけ短くしたいのですが知識不足で出来ません。 また、KENT WEB様のcgiプログラム「postmail」使用させていただいておるのですがどうも上手く実行してくれてないみたいです。cgiだけ表示され、htmlフォイルは表示されないのです。前回質問させていただいたのですが、やはりcgi-binの中に一緒にHTMLファイルを置き、HTMLファイルを参照することは不可能なんでしょうか? 前回御質問させていただき、せっかく良いご回答も頂きましたが私の知識不足で書かれている内容が理解できませんでした。どなたかお教え下さい。よろしくお願いします。参考までに、前回のリンクをお知らせさせていただきます。http://oshiete1.goo.ne.jp/kotaeru.php3?q=1492073
- ベストアンサー
- ハードウェア・サーバー
- apacheの設定について
先日red hat linux8(雑誌の付録)を購入し、apacheを試しているのですが。 http://localhost/やhttpd://localhost/~ユーザー名/にはアクセスできるのですが。 http://localhost/manual/index.htmlやhttpd://localhost/cgi-bin/にアクセスしようとすると「302 found」と出てしまいます。 ちゃんとmanualやcgi-binのフォルダはあるのに... どなたか、教えてください。 apacheのバージョンは2.0.4です。 お願いします。
- ベストアンサー
- その他(OS)
- apacheのCGI設定
pc9821にFreeBSD(98)をいれapache1.3を起動させています。cgiはlight.cgiというソフトをつかっています。なかなかcgiがうまくいきません。参考ページには public_html / index.html (トップページ) | +-- bbs / light.cgi [755] | admin.cgi [755] ・・・・(省略) +-- lock [777] / | +-- past [777] / 0001.cgi [666] とかかれていますが、実際に私のサーバーにはpublic_htmlというフォルダは存在していなくて /usr/local/www/cgi-binにbbsというフォルダをつくり あとは上のようにしています。またindex.htmlは/usr/local/www/dataのなかにいれて表示してWebサーバーとしてはたらいています。またapacheの/usr/local/etc/apacheのhttpd.confは 関係ありそうな行だけあげると ServerRoot "/usr/local" DocumentRoot "/usr/local/www/cgi-bin" <Directory "/usr/local/www/cgi-bin/bbs"> Options Indexes FollowSymLinks MultiViews <location "/cgi-bin/"> Options ExecCGI AllowOverride AuthConfig Limit Order allow ,deny Allow from all </Location> <IfModule mod_mime.c> TypesConfig /usr/local/etc/apache/mime.types ADDHandler cgi-script .cgi </IfModule> ScriptAlias /cgi-bin/ "/usr/local/www/cgi-bin/" <Directory "/usr/local/www/cgi-bin/bbs"> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory> AddHandler cgi-script .cgi どこがおかしいのかおしえていただけないでしょうか?
- ベストアンサー
- CGI
- [Apache]/cgi-bin/以外でCGIを使いたい
WindowsでCGIのテストをしているのですが、パスが例えば http://localhost/cgi-bin/test.cgi というようにすればcgiを実行することができるのですが、 http://localhost/test.cgi というようにして実行するには、どのように設定すればいいのでしょうか? たぶんhttpd.confの設定だと思うのですが・・。 ちなみに、インストールされているApacheのバージョンはわかりません。というのも、LaVieを買ったら、すでに C:\Program Files\Apache Group(以下) にインストールされていて、ヴァージョン情報がどこに書いてあるかわかりません。 それでもアドバイス頂けたらと思います。 また、これ(cgi-binを省略してアクセスする方法)について書かれているサイトもありましたらよろしくお願いします。
- 締切済み
- その他(ITシステム運用・管理)
- 以前書きこんだ者です。Apacheを自宅サーバーとして動かしています。
以前書きこんだ者です。Apacheを自宅サーバーとして動かしています。Perlを含むCGIとSSI、それにHtmlをApacheで稼働させたいと思っているのですが、cgi-bin 以下のディレクトリでPerlとCGIを 動かすことはできたのですが、Htmlが動きません。ここに投稿させていただいたところ、CGI専用 ディレクトリでHtmlを動かそうとしているとご指摘されたので、cgi-binのひとつ上のディレクトリ でHtmlを動かそうと、httpd.confの中のServerRoot "C:/Program Files/Apache Software Foundation/Apache2.2"にしました。そしてエクスプローラで”localhost/htmlのファイル”を実行したところ、”Webページが見つかりません”とでてしまいました。何度いろいろなファイルで やっても同じエラーが出てしまいます。どうやらApache2.2のHtmlファイルを認識してくれない ようなのですが原因がわかりません。わかる方どうか教えてください。よろしくお願いします。
- ベストアンサー
- ハードウェア・サーバー
- Apache2.2 Aliasについて
http://www.adminweb.jp/apache/docroot/index3.html 上のサイトを参考に、ドキュメントルート以外の場所へアクセスできるようにしたいんですが 参考サイト通りにやっても、うまく動きません。 httpd.confは <IfModule alias_module> Alias /labo/ "C:/Apache_Server/data/" <Directory "C:/Apache_Server/data"> Allow from all </Directory> ScriptAlias /cgi-bin/ "C:/Apache_Server/Apahce2.2/cgi-bin/" </IfModule> このように書いています。 (ServerRoot は "C:/Apache_Server/Apahce2.2" DocumentRoot は "C:/Apache_Server/Apahce2.2/htdocs"です) C:\Apache_Server\data に index.htmlを置き http://localhost/labo/index.html へアクセスしても Not Found The requested URL /labo/index.html was not found on this server. と表示されます。 環境はApache2.2、windows7です。 どこか間違っているところがあるのでしょうか? よろしくお願いいたします。
- ベストアンサー
- ハードウェア・サーバー
補足
はい。その通りです。 自宅サーバーのOSはWindows2000です。