• 締切済み
  • 暇なときにでも

windows環境でのapacheのsymlink

以下の環境で開発をしています。 OS: windows XP ActivePerl 5.8.8 apache 2.0.64 perlスクリプトの第1行目に #!/usr/bin/perl を記述していますが、ActivePerl のありどころが C:\dev\perl\bin\なので第1行目を #!/dev/perl/bin/perl  にしなければなりません。 #!/usr/bin/perlの記述をそのまま使う為に巷でよく言われているようなwindowsのジャンクション機能を利用しています。 Cドライブ直下に「usr」ホルダを作り、ここにC:\dev\perl\bin\のジャンクションを設定しました。 するとC:\usr\を覗くとbin\が存在します。つまりC:\dev\perl\bin\はC:\usr\bin\でアクセスできるようになります。 しかしこの状態で#!/usr/bin/perlの記述をそのまま使うと500エラーが出ます。 apacheのhttpd.confには <Directory /> Options FollowSymLinks </Directory> を記述してあります。 その他に何か設定が必要でしょうか? 宜しく御教授お願いいたします。

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数120
  • ありがとう数0

みんなの回答

  • 回答No.1

こんちす よーわからにのですが、PERL置き場の問題であるならば、 シンボリックリンクではなく、PERLのインストール位置を 動かしてはどうなんでしょうか、 また、コピーするだけでもおkでは? Windowsで使っているならば、環境変数の変更も必要でしょうが?

共感・感謝の気持ちを伝えよう!

関連するQ&A

  • windows環境でのperlのパス

    以下の環境で開発をしています。 OS: windows XP ActivePerl 5.8.8 apache 2.0.64 レンタルサーバで利用しやすいようにperlスクリプトの第1行目に #!/usr/bin/perl を記述していますが、ActivePerl のありどころが C:\dev\perl\bin\なので第1行目を #!/dev/perl/bin/perl  にしなければなりません。 #!/usr/bin/perlの記述をそのまま使う為に巷でよく言われているようなwindowsのジャンクション機能を利用しています。 Cドライブ直下に「usr」ホルダを作り、ここにC:\dev\perl\bin\のジャンクションを設定しました。 するとC:\usr\を覗くとbin\が存在します。つまりC:\dev\perl\bin\はC:\usr\bin\でアクセスできるようになります。 しかしこの状態で#!/usr/bin/perlの記述をそのまま使うと500エラーが出ます。 これ以外に何か良い方法はございませんでしょうか? また同じような開発環境の皆様はperlスクリプトの第1行目をどのように対策されていますでしょうか? 宜しく御教授お願いいたします。

    • ベストアンサー
    • Perl
  • apache の設定

    ホームページを置いているディレクトリで、index.html がない場合に ディレクトリの中身が見えてしまうので、httpd.conf を修正しました。  <Directory /home/hogehoge> Options All </Directory> から  <Directory /home/hogehoge> Options Includes FollowSymLinks ExecCGI </Directory> で、Indexes をとったつもりで、apache をリスタート させたのですが、それでもディレクトリの中身が見えてしまいます。 何か、勘違いしているのでしょうか??? また他に行うことがあるのでしょうか。 教えて頂けますでしょうか。 よろしくお願い致します。

  • apache でバイナリのCGIを動かすには

    apache でバイナリのCGIを動かすにはどうすればよいのでしょうか? (なお、プログラム自体に問題は決してありません。『HTTPD』を使うと問題なく動作します) OS:WIN98 C++バイナリのCGIを呼び出すと下記エラーとなります。 Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please .... the error. More ... log. - Apache/1.3.12 Server at http://127.0.0.2/ Port 80 最終アクセスログ 127.0.0.1 - - [12/Mar/2001:23:20:27 +0900] "GET /ab.cgi HTTP/1.1" 500 610 最終エラーログ [Mon Mar 12 23:20:25 2001] [error] [client 127.0.0.1] Premature end of script headers: e:/www.homepage/kokucho81/ab.cgi apache の httpd.conf と httpd.conf.default との比較 ** httpd.conf ServerName http://127.0.0.2/ ** httpd.conf.default #ServerName new.host.name ** httpd.conf DocumentRoot "E:/WWW.HOMEPAGE/KOKUCHO81" ** httpd.conf.default DocumentRoot "C:/Apache/htdocs" ** httpd.conf <Directory /> Options FollowSymLinks ExecCGI AllowOverride None ** httpd.conf.default <Directory /> Options FollowSymLinks AllowOverride None ** httpd.conf <Directory "E:/WWW.HOMEPAGE/KOKUCHO81"> ** httpd.conf.default <Directory "C:/Apache/htdocs"> ** httpd.conf Options Indexes FollowSymLinks ExecCGI ** httpd.conf.default Options Indexes FollowSymLinks MultiViews ** httpd.conf AddHandler cgi-script .cgi ** httpd.conf.default #AddHandler cgi-script .cgi そもそも、設定が足りてないんでしょうか? apacheを良く使う方、よろしくお願いします。m(_ _)m

  • ApacheでCGIが正常に動作しません。

    httpd.confの設定でPerl.exeの場所の指定は必要なのでしょうか? 以下の場所に設定を行うのかと思ったのですが、設定するとApache起動時にprogram filesがエラーになってしまいます。 ServerSignature On !g:/program files/apache group/apache/perl/bin/" 設定が必要であれば設定方法をお願いします。 httpd.confの設定に <Directory "G:/Program Files/Apache Group/Apache/cgi-bin"> AllowOverride None # Options None Options ExecCGI Order allow,deny Allow from all </Directory> は追加してあります。 現在、CGIの結果として #!/perl/bin/Perl.exe print "Content-type: text/html\n\n"; print "\n"; print " Hello! WORLD \n"; print "\n"; exit; のように表示されない命令も全て表示されます。 本当はHello!WORLDだけを表示したいのですが。

  • cgi-binにアクセスできない

    apache初心者です。 Turbolinux6.0+apache1.3.12でHTTPサーバを試しているのですが、 cgi-binにあるファイルを見ようとするとHTTP 403エラーが出て表示できません。 属性とグループを色々変えてみたんですが、だめでした。 access.confで関係ありそうな所は <Directory /> Options None AllowOverride None order allow,deny allow from all </Directory> <Directory /home/httpd/html> Options Indexes Includes FollowSymLinks AllowOverride None order allow,deny allow from all </Directory> <Directory /home/httpd/cgi-bin> AllowOverride None Options FollowSymlinks ExecCGI order allow,deny allow from all </Directory> としていますが、なぜcgi-binの中身が見えないのかわかりません。 よろしくおねがいします。

  • 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とTomcat連携後DocumentRootはどう設定しますか?

    Apache,Tomcatをmod_jk2で連携できたのですが、 /usr/local/tomcat4/webapps/test/index.jsp のページをhttp://www.***.com/test/ではなく、 http://www.***.com/で表示したいのですが、 どこで設定すればよいでしょうか? 以外にこれについて書かれているサイトがなく困っています。 server.xmlに以下を書いてTomcat,Apacheを再起動しても駄目でした。 <Context path="" docBase="test" debug="0" reloadable="true"/> なので、Apacheで設定するのかと思いhttpd.confに 以下を書いてみましたが駄目でした。 <IfModule mod_alias.c> Alias / "/usr/local/tomcat4/webapps/test" <Directory "/usr/local/tomcat4/webapps/test"> Options FollowSymLinks MultiViews </Directory> 環境はRedHat9です。よろしくおねがいします。

    • ベストアンサー
    • Java
  • apacheで「You don't have permission to access 」

    Nagiosというソフトをインストールしているのですが(Webベースで動く)、 http://localhost/nagios にアクセスすると、「You don't have permission to access /nagios/ on this server.」と出てしまいます。Apacheのhttpd.confは最後の行に、 ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin <Directory "/usr/local/nagios/sbin"> AllowOverride AuthConfig Options ExecCGI Order allow,deny Allow from all </Directory> Alias /nagios /usr/local/nagios/share <Directory "/usr/local/nagios/share"> Options None AllowOverride AuthConfig Order allow,deny Allow from all </Directory> を加えて、以下も加えました。 <Directory /> Options FollowSymLinks AllowOverride Options </Directory> AddHandler cgi-script .cgi 何か原因は考えられるでしょうか?これだけではやはり、情報不足でしょうか?

  • apache自動起動について

    はじめまして、自宅でサーバーを立てようとしているのですが、つまずいてしまったので力を貸してください。 環境はRedhat9.0(?)、apache2.054を使用しています。 他のいろいろなHPを参考に /etc/rc.d/rc.local の最後に /usr/local/apache/bin/apachectl start と付け加えてみたのですが、エラーが表示されます。 [エラー] 「httpd failed. The error was: Starting httpd: Syntax error on line 28 of /etc/httpd/conf.d/perl.conf: lnvalid per-directory PerlOption: parseheaders [FAILED]] /etc/httpd/conf.d/perl.conf 28行目あたりの記述 alias /perl /var/www/perl <directory /var/www/perl> sethandler perl-script perlhandler modperl::registry::handler perloptions +parseheaders ←28行目 options +execcgi </directory> 上記エラーが何を示しているか、自動起動の方法を教えてください。

  • まだphpmyadminのタイトル画面がでません

    Vine Linuxです。 apacheとphpinfoのテスト用画面は正常に出力されます。 しかし、ブラウザでphpmyadminのタイトル画面を表示したときには、そのディレクトリの中(phpmyadmin)のファイル構成が出てくるだけでした。 {インストール先ディレクトリ}/index.php でアクセスしようとするとNotFoundになりますので、 apacheのhttd.confに次のような記述を追加しました。 Alias /phpmyadmin/ "/var/www/html/phpmyadmin" <Directory "/phpmyadmin"> Options -Indexes FollowSymLinks Order deny,allow Allow from xxx.x.x.x Allow from xxx.xxx.xx.x <Directory> (xxxというのは接続するPCのアドレスが入ります) また、下記のサイトで出ていました、 http://ziddy.japan.zdnet.com/qa4458048.html 1. httpd.conf の DirectoryIndex ディレクティブに index.php が含まれていない。 2. httpd.conf に AddType application/x-httpd-php .php がない。 3. httpd.conf で Options -Indexes FollowSymLinks が指定されていない。または Options Indexes FollowSymLinks が指定されている。 の設定対応も行っています。 ここまでの設定でもブラウザでの表示は変化ありません。 足りない設定など、改善に向かうヒントがありましたら、ご教授いただけないでしょうか? よろしくお願いします。