0

実行する必要があるクライアント側のスクリプトがあります。投稿を行うphpスクリプトです。私の Web フレームワークは、uWSGI をミドルウェアとして使用する python フラスコと nginx です。php ファイルは、dhtmxlGrid を Excel にエクスポートするスクリプトです。試してエクスポートすると...以下のエラーが表示されます。私はPhPについて何も知りませんでした。

これが私が実行しようとしているコマンドです。サーバーにphpがインストールされているので、信じています。apt-get install php5 を実行しました。

<input type="image" src="static/pix/excel.png" WIDTH=25 HEIGHT=25 value="Get as Excel" onclick="mygrid.toExcel('static/js/dhtmlxGrid/codebase/grid-excel-php/generate.php');">

これは、[Excel にエクスポート] ボタンをクリックしたときに表示される FireFox エラーです。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>405 Method Not Allowed</title>
<h1>Method Not Allowed</h1>
<p>The method POST is not allowed for the requested URL.</p>

アップデート:

以下をnginx.confファイルに追加しました。

location /static/js/dhtmlxGrid/codebase/grid-excel-php/generate.php {
            access_log   off;
            allow 127.0.0.1;
        }

同じエラー。405。

ブラウザでhttp://dashboard.com/static/js/dhtmlxGrid/codebase/grid-excel-php/generate.phpを呼び出すと、generate.php のダウンロード ダイアログ ボックスが表示され、コードが表示されます。だから... phpが実行されていないと思います。

4

2 に答える 2

0

Flask または Python は PHP を解釈する方法を知りません。また、任意のルートで POST メソッドを許可するには、nginx でリクエストをキャッチし、php インタープリターから提供することをお勧めします。

于 2012-12-27T14:46:17.820 に答える
0

PHP インタープリターを使用してそれをlocation指し、レンダリングするディレクティブを nginx構成に追加する必要があります。static/generate.php次に、flask アプリケーション内で、nginx 構成で定義された URL に投稿します。

于 2012-12-27T15:22:24.100 に答える