Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python CGIプログラミング用にApacheを設定する方法は?


CGI用にApacheWebサーバーを構成する

サーバーでCGIスクリプトを正しく実行するには、Webサーバーを構成する必要があります。 CGIスクリプトを実行するようにApacheWebサーバーを構成する方法について説明します。

ScriptAliasの使用 ディレクトリをScriptAliasディレクティブ(Apacheを構成するためのオプション)として設定できます。このようにして、Apacheは、そのディレクトリ内にあるすべてのファイルがCGIスクリプトであることを理解します。これは、ApacheでCGIスクリプトを実行するための最も簡単な方法かもしれません。典型的なScriptAlias行は、ApacheWebサーバーのhttpd.confファイルで次のようになります。

ScriptAlias /cgi-bin/ /usr/local/apache2/cgi-bin/

したがって、すべてのCGIファイルをApacheで指定されたデフォルトのディレクトリに保持する場合は、httpd.confファイルでScriptAliasを検索し、その行のコメントを解除します(前の#を削除します)。ただし、これは常に要件を満たしていない場合があります。そのため、PythonをCGIとして実行するための他のオプションもいくつか検討します。

デフォルト以外の特定のディレクトリからCGIを実行する 以下を使用して、CGIファイルを実行するための特定のディレクトリを準備できます。

<Directory /usr/local/apache2/htdocs/somedir>Options +ExecCGI</Directory>

ここで、「somedir」は好みのディレクトリです。

上記の構成を使用する場合。次に、ウィンチで実行するCGIファイルのサーバー拡張子を指定するためにも、以下を指定する必要があります。

AddHandler cgi-script .cgi .pl

したがって、上記はApacheに.cgiおよび.pl拡張子のファイルをCGIとして実行するように指示しています

ユーザーディレクトリ

ユーザーのディレクトリからCGIファイルを実行する場合は、次を使用できます-

<Directory /home/*/public_html>
Options +ExecCGI
AddHandler cgi-script .cgi
</Directory>

上記は、Apacheがユーザーのディレクトリ内にCGIとして存在する.cgi拡張子を持つすべてのファイルを実行することを示しています。

繰り返しますが、ユーザーのディレクトリ内に配置されたすべてのファイルをCGIとして実行する場合は、次を使用できます-

<Directory /home/*/public_html/cg-bin>
Options +ExecCGI
SetHandler cgi-script
</Directory>
Using .htaccess

httpd.confファイルにアクセスできない場合は、.htaccessファイルを使用してCGIスクリプトを実行できます。特定の拡張子を持つファイルをCGIとして使用するには、.htaccessファイルを次のように構成します-

Options +ExecCGI
AddHandler cgi-script cgi pl

ディレクトリ内にあるすべてのファイルをCGIとして実行する場合は、次を使用できます-

Options +ExecCGI
SetHandler cgi-script

  1. 初心者向けのPythonチュートリアル:開始方法

    Pythonは、最も人気のあるプログラミング言語の1つであり、大学レベルのコースで最初に教えられた言語の1つです。大学にいない場合(または登録する前に有利なスタートを切りたい場合)、自分で、または自宅でPythonの学習を開始する方法はたくさんあります。 初心者向けのこのPythonチュートリアルは、Pythonを学ぶための取り組みを始めるのに役立ちます。 Pythonを学ぶ理由 Pythonは、読みやすさを念頭に置いて設計されたオブジェクト指向言語です。これまでにコードの壁を見たことがあれば、その言語に精通していない限り、理解するのがやや難しいことに気付いたかもしれません。 Py

  2. WindowsでのPythonプログラミング用のIDE

    この記事では、PythonforWindowsで利用できるさまざまなIDEについて学習します。 Pycharm インタラクティブなPythonコンソール Webフレームワークのサポート より速い屈折時間 開発が少ない Jupyterノートブック ほぼすべてのPythonモジュールとの互換性 スペースとハードウェアの要件が少ない 組み込みのターミナルおよびカーネル機能 さまざまなウィジェットを適用できます ウィングイデ 組み込みのデバッグツール 単体テストのサポート 簡単なコードナビゲーション機能。 コモドイデ サードパーティライブラリのサポート XMLオートコンプ