始终为nginx上的每个请求运行一个php文件

始终为nginx上的每个请求运行一个php文件,nginx,url-rewriting,Nginx,Url Rewriting,我确实在Apache上运行了几年,但我无法在Apache上运行一些东西。所以现在我使用Nginx,但是我不能让重写规则按照我想要的方式工作 如果链接中的文件存在,我希望始终运行PHP脚本(/index.PHP),如果不存在,则永远不要返回404(这是由PHP完成的)。出于安全考虑,我需要这个重定向。安全设置存储在一个数据库中,所以我真的需要将这个PHP脚本始终作为第一个运行 在Apache中,我使用了以下配置: <Directory /var/www/html> Re

我确实在Apache上运行了几年,但我无法在Apache上运行一些东西。所以现在我使用Nginx,但是我不能让重写规则按照我想要的方式工作

如果链接中的文件存在,我希望始终运行PHP脚本(
/index.PHP
),如果不存在,则永远不要返回404(这是由PHP完成的)。出于安全考虑,我需要这个重定向。安全设置存储在一个数据库中,所以我真的需要将这个PHP脚本始终作为第一个运行

在Apache中,我使用了以下配置:

<Directory /var/www/html>
        RewriteEngine on
        RewriteCond %{REQUEST_URI} !^/index.php
        RewriteRule ^(.*)$ /index.php
</Directory>

重新启动发动机
重写cond%{REQUEST_URI}^/index.php
重写规则^(.*)$/index.php

您现在使用的是什么配置,有什么问题吗?现在我使用“try_files$uri/index.php”,但如果我使用一个现有文件,如domain.con/path/to/file.txt,它会重新调用该文件。我想运行一个php脚本(/index.php),看看您是否有权限访问这个文件(它可以做更多的事情,但这并不重要)
index.php
文件是否需要资源文件,比如
.css
?如果您真的只想
nginx
返回一个文件,请将PHP块放入
location/
并将脚本文件名硬连接到
/path/to/index.PHP