Nginx 服务器位置配置

Nginx 服务器位置配置

我想要域名 example.com/a/1234/asdf、example.com/a/7890/qwer、...、example.com/a/* 从同一个索引文件 /var/www/foo/bar/index.php 提供网页

我的 nginx 配置如下:

server {

        listen 80;
        root /var/www;
        index index.php;

        rewrite */a/(.*) /var/www/foo/bar/index.php;

        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi_params;
        }
}

当我转到 example.com/a/1234/asdf 时,出现 404 未找到错误。

答案1

您可能没有文件/var/www/var/www/foo/bar/index.php。因此当然找不到它。请记住,这些路径是相对于文档的root

你可能想要这样的东西:

rewrite */a/(.*) /foo/bar/index.php last;

相关内容