Python、nginx和Flask,如何执行php post脚本-不允许使用405方法
我需要执行一个客户端脚本。这是一个php脚本,可以执行post。我的web框架是使用uWSGI作为中间件的python flask和nginx。php文件是一个将dhtmxlGrid导出到excel的脚本。当尝试并导出时…下面的错误就是我得到的。我对PhP一无所知 这是我试图执行的命令。我相信服务器上安装了php。刚刚安装了一个apt get php5Python、nginx和Flask,如何执行php post脚本-不允许使用405方法,php,python,nginx,Php,Python,Nginx,我需要执行一个客户端脚本。这是一个php脚本,可以执行post。我的web框架是使用uWSGI作为中间件的python flask和nginx。php文件是一个将dhtmxlGrid导出到excel的脚本。当尝试并导出时…下面的错误就是我得到的。我对PhP一无所知 这是我试图执行的命令。我相信服务器上安装了php。刚刚安装了一个apt get php5 <input type="image" src="static/pix/excel.png" WIDTH=25 HEIGHT=25 val
<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');">
同样的错误。405
如果我调用broser,我会得到一个下载generate.php拨号框,在那里我可以看到代码。所以…猜测php没有被执行。Flask或Python不知道如何解释php,您还允许在任何路由上使用POST方法,最好的办法是在nginx中捕获请求并从php解释器提供服务。您需要在nginx配置中添加一个
location
指令,该指令指向static/generate.php
,并使用php解释器呈现它。然后在flask应用程序中发布到nginx配置中定义的URL 如果你从broser调用PHP脚本会发生什么?如果我用post parms粘贴url,它只会从nginx下载名为generate.phpHow do I server的文件,然后如果我有一个名为static/generate.PHP的文件?你需要一个PHP解释器来评估和执行该文件。
<!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>
location /static/js/dhtmlxGrid/codebase/grid-excel-php/generate.php {
access_log off;
allow 127.0.0.1;
}