• ベストアンサー

apacheで.pyファイルを扱いたい

.pyファイルを表示しようとすると Object not found! となり、 URLの本来であれば~~.pyと表示される部分が %7B0%7D となってしまいます。 apacheが.pyファイルを実行ファイルとして認識していないんだと思うのですが どうしたら認識してくれるのか分りません。

  • CGI
  • 回答数1
  • ありがとう数17

質問者が選んだベストアンサー

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.1

%7B0%7Dは、 {0} の意味ですよ。URLエンコードされている。 URLに使える文字は、 unreserved = alphanum | mark mark = "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")" ですから、{と}は、%で始まるコードに変換されている。 >URLの本来であれば~~.pyと表示される部分が ではなくて、{0}が、%7B0%7D となっている。 .py は多分pythonのファイルだと思いますが、それがそきにでしたら、単純に実行権限を与えて、.htaccessに、CGIだと指定してやればよい。Windowsじゃなければ、ファイルの最初に書かれているパスでどのプログラム化はOSが判断する。  もちろん、Windowsじゃなければ、拡張子はファイル名以上の意味は持たないので、拡張子は.cgiだろうが、htmlであろうが関係ありません。

関連するQ&A

  • apacheとphpを入れたのですが上手く動作してくれません。

    apacheを起動すると次の様なものが表示されます。 The requested URL /phpinfo was not found on this server. Apache/2.0.53 (Win32) Server at localhost Port 80 restartすると表示されません、これは何か問題あるのでしょうか? またphpを実装して実行したら The requested URL /phpinfo was not found on this server. Apache/2.0.53 (Win32) Server at localhost Port 80 この様なエラー?が発生しました。 どうしたらいいのうでしょうか??色々調べてやってみても駄目だした、皆様宜しくお願いします。

    • 締切済み
    • PHP
  • apacheで403を404のように見せる

    apache(Version1.3.26)の設定で困っています。 URLからあるディレクトリに参照に行くと403のエラーとなり "Forbidden"とか"このページの表示が認められていません"とかでると 思います。 このときに、404の"Not Found"、"ページが見つかりません"を出すように したいのですが、その方法がわかりません。 ErrorDocument で作成したHTMLを表示させることはできるのですが、 HTMLを作成することなくそれを実現させたい。 これらの設定を何もしていない状態だと、IEとFireFox他で見た目が違います。 IEだと"ページが見つかりません"、FireFoxだと"Not Found"で表示されます。 その状態をそのままで403で接続したときにIEだと"ページが見つかりません"、FireFoxだと"Not Found" がでるようにしたいです。 どなたかご存知の方いらっしゃいましたらご教授をお願いします。

  • アパッチPHPについて

    PHP初心者です OS windows vista 今回xamppをインストールしたのですが、 以前アパッチを単体でインストールしたことが影響しているのか、 ブラウザでの表示がうまくできません Object not found! 要求された URL は本サーバでは見つかりませんでした。 もし手入力で URL を入力した場合は、綴りを確認して再度お試し下さい。 サーバーの障害と思われる場合は、ウェブ管理者までご連絡ください。 Error 404 となってしまいます 単体でインストールしたアパッチをゴミ箱に入れて消したのですが、 これでは不十分でしょうか? 正しいアンインストール方法ご教示お願いします

    • ベストアンサー
    • PHP
  • Apache で特定の拡張子を持つファイルへのリクエストを cgi に

    Apache で特定の拡張子を持つファイルへのリクエストを cgi に 送るにはどうしたらいいでしょうか?つまり、 http://127.0.0.1/proxytest_xml/a.xml http://127.0.0.1/proxytest_xml/b.xml など拡張子 xml の任意のファイルを HTTP リクエストされたときに、 D:\www\proxytest_xml\cgi-bin\index.cgi が実行されるようにしたいのですが、どうしたらいいでしょうか? 環境は Windows XP + Apache HTTP Server 2.2 + ActivePerl です。 Apache の httpd.conf には <Directory "D:/www/proxytest_xml/"> AllowOverride None Order allow,deny Allow from all AddHandler text/xml .xml # これがなくても同じですが Action text/xml D:/www/proxytest_xml/cgi-bin/index.cgi </Directory> <Directory "D:/www/proxytest_xml/cgi-bin/"> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory> と書いてあります。 これで PATH_INFO に "a.xml" を含んだ URI が来ると思ったのですが、 ブラウザでは Not Found The requested URL /proxytest_xml/a.xml was not found on this server. となり、Apache の error.log には [Fri Apr 09 23:51:24 2010] [error] [client 127.0.0.1] File does not exist: D:/www/proxytest_xml/a.xml と出力され、Directory 内の Action が効いていない気がします。 よろしくお願いします。

  • Python拡張子(*.py)は必須か?

    私の使っている本には: ”拡張子は必須ではありませんが”と、書いてあります。 しかし、実際として**.pyは付けないとwindowsではインタプリタの実行は行われません。 ここで、この問題点をPythonとWindowsの2つに分けて考えてみました。 Python自体には**.pyと言う拡張子をつける規則はないが、 Windowsとしては、**.pyの拡張子がないとPythonファイルとして認識しないので付ける。 以上で正しいでしょうか? それとも、私が使っている本の”拡張子は必須ではありませんが”が間違っているのでしょうか? 宜しく、願います。

  • gnuplot.py について

    目的:pythonで数値計算した結果をgnuplotで出力したい。 要点:Gnuplot を import できてもグラフを表示できない。 OS : Mac OS X 10.5 まず、SorceForge から ・numerical python (numpy-1.5.1-py2.7-python.org-macosx10.3) ・gnuplot.py (gnuplot-py-1.8.tar) をダウンロードしました。 次にterminalで上のそれぞれのファイルがあるディレクトリにいって、 >> python setup.py install としました。どうやら成功した模様です。 numpy と Gnuplot というフォルダが /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/ というディレクトリにできています。 そして、IDLE の python shell で >>> import numpy >>> import Gnuplot としました。無事完了します。ここまではOKです。 しかし、試しに python shell から gnuplot で表示してみようとすると、IOError: [Errno 32] Broken pipe というエラーを表示します。たとえば、上に書いたディレクトリのGnuplot というフォルダの中に、test.py というスクリプトがあって、IDLE で開いて実行すると、次のような表示が出ます: This program exercises many of the features of Gnuplot.py. The commands that are actually sent to gnuplot are printed for your enjoyment. Popping up a blank gnuplot window on your screen. Press return to show results... Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Gnuplot/demo.py", line 110, in <module> demo() File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Gnuplot/demo.py", line 28, in demo g = Gnuplot.Gnuplot(debug=1) File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Gnuplot/_Gnuplot.py", line 187, in __init__ self('set terminal %s' % (gp.GnuplotOpts.default_term,)) File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Gnuplot/_Gnuplot.py", line 210, in __call__ self.gnuplot(s) File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/Gnuplot/gp_macosx.py", line 144, in __call__ self.flush() IOError: [Errno 32] Broken pipe 他のスクリプトを実行してみると、次の4つを除き正常に実行されます; _init.py, demo.py, test.py, gp_mac.py ただし、gp_mac.py だけは IOError: [Errno 32] Broken pipe ではなく、 ImportError: No module named Required_Suite というエラーです。 何が原因でしょうか?これを解決するにはどうしたらよいのでしょうか?

  • Apacheで自作のエラー画面が反映されません

    はじめまして、debian Linuxで、webページを作成しています。 指定したURLが正しくないときに出る、 「404 Not Found」のエラー画面を自作し、 /etc/apache2/conf.d/localized-error-pages に設定をしたのですが、反映されず、デフォルトの表示のままとなってしまいます。 正しいURLを入力(http://[IPアドレス]/kounyu/input.htmlなど) として正常に表示されることは確認済みです。 どうして表示されないのか、頭を悩ませております。 恐れ入りますが、どなたか、ご教示頂けないでしょうか。 [設定状況] (1)コンテンツを配置しているディレクトリに、「error」フォルダを作り、エラーファイルを置きました。サイズは1.4kです。 /home/userhoge/public_html/kounyu/error/404.html (2)/etc/apache2/conf.d/localized-error-pages に、以下の1行を追記しました。 ErrorDocument 404 /home/userhoge/public_html/kounyu/error/404.html このファイルの他の行は、全てコメントアウトされています。 (3)そして、apacheを再起動 /etc/init.d/apache2 restart (4)しかし、どうしても写真のようになってしまいます(ブラウザはIEです)。 恐れ入りますが、何卒よろしくお願いいたします。

  • 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です。 どこか間違っているところがあるのでしょうか? よろしくお願いいたします。

  • ApacheのRewriteRuleについて

    ApacheのRewriteRuleで困っています。 以下のURLを /gr/15bd60625f36edee4051b82e021d7a7f1137487409.php?categoryID=1&TitleID=38 このようなURLに置き換えて実行させようと思っています。 /grco/index.php?cat=1&id=38 mod_rewriteを導入し(動作確認済み) Apacheのhttpd.confに以下の定義を追加しいろいろと やっていますが・・うまくいきません。 URLの?がうまく処理できていないようです。 引数部分の置き換えができていません。 RewriteRule ^/gr/(.*)(.\.php)([^\?]*)(.*)$ /grco/index.php?cat=$1&id=$2 [L] 何か指定に問題があるのでしょうか? お手数ですが、ご存知の方がいらっしゃいましたら アドバイス等いただければと思います。 よろしくお願いします。

  • Apache使ってphpでMySQLへアクセスが…

    Macを使っているものです. 最近phpでMySQLにアクセスしようということに取り組んでいます. しかし,apacheがよくないのかmysqlがよくないのか適切に動作してくれません. よくわからないので,手順を書いて問題を言及してみました... 何がいけないのでしょうか... --------- Apacheはデフォルトで入ってるはず・・・ apacheの設定ファイルhttpd.confのポートを8080に設定(これで競合はないはず・・・) ↓ [1]URLにhttp://localhost:8080/とうつと,Apacheのテストページではなく,It works!と出る ↓ とりあえず,Siteフォルダにphpファイルを置き,hello worldを表示.できた(じゃあ,動いてるのかな?) ↓ コマンドラインから「apachectl start」を実行「Already loaded」 じゃあ,動いてるっぽい ↓ じゃあ,DBアクセス用のphpを動作させよう!MySQL導入 ↓ 設定ファイルphp.iniのパスがおかしかったので,mysql.default_socket=/tmp/mysql.sockに変更 実際にcdで移動し,ファイルがmysql.sockがあることを確認 ↓ よーし,実行だ!http://localhost:8080/db_access.php→Not Found あるぇ?なんでだ? ↓ http://(ip直打ち):8080/db_access.php→表示! でも,ソースコード内に以下の記述をしている(簡略化して書きます) ********** $url="localhost" $link = mysql_connect($url,$user,$pass) or die("MySQLへの接続に失敗しました。"); <html>接続ID:<?=$link ?></html> ********** なのに,結果は :::::::::: 接続ID: :::::::::: という風になにも表示されない(・ω・` 結果が「MySQLへの接続に失敗しました。」なら,そもそもMySQLに接続できてないんだろうけど,結果だけがかえってこないのはなんでだろう. ちなみに,$urlをip直打ちにしたらブラウザに怒られた.そりゃそうだよな. --------- という流れで今に至ります. おそらく[1]の時点が問題かと自分では思うのですが,原因がわかりません. ご助言おねがいいたします.

    • 締切済み
    • PHP

専門家に質問してみよう