如何通过在NGINX上运行的普通网站执行PHP脚本



我有一个非常最小的HTML JavaScript网站,在Nginx Web服务器上运行。
我正在使用ubuntu,还安装了php7.2。

我想触发php脚本执行在网站上单击按钮时。
PHP脚本包含敏感数据,因此最终用户不应访问

我该怎么做?

谢谢!


html

<html>
    <head></head>
    <body>
        <input type="text" name="user_input">
        <input type="submit" value="user_submit">       
    </body>
</html>

nginx

server {
    listen 80;
    listen [::]:80;
    root /var/wwww/html;
    root index.html;
    location / {
        try_files $uri $uri/ =404;
    }
}

我认为您想做的是提交表格:

<html>
    <body>
        <form action="yourfile.php" method="post">
            <!-- Your form fields -->
            <button type="submit">Submit</button>
        </form>
    </body>
</html>

然后在PHP文件上您会在$_POST变量中找到输入。

请小心:如果未配置Web服务器以将请求阻止到该文件,那么某人仍然可以通过http://example.com/yourfile.php访问它,并查看纯文本。您要么需要:

  1. 配置Web服务器以阻止此请求或
  2. (更好(将您的PHP脚本放在无法访问的文件夹中,并使用看起来像这样的PHP文件:
<?php
// Assuming your script is 1 level below:
require __DIR__ . '/../yourfile.php';
// Launch a function or whatever is needed here. 

如果提交表单时,请下载文件而不是执行文件,请按照此示例的行配置NGINX(当然,全部信贷到OP(

最新更新