Назад | Перейти на главную страницу

Конфигурация расположения сервера 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 not found.

Вероятно, у вас нет файла /var/www/var/www/foo/bar/index.php. Так что, конечно, его нельзя найти. Помните, что эти пути указаны относительно документа root.

Вероятно, вам нужно что-то вроде:

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