У меня следующая структура каталогов:
mysite.com
- /api (codeigniter RESTful API Server)
- /app (backbonejs app)
Я пытаюсь настроить NGINX так, чтобы все запросы mysite.com/api* направлялись в каталог api и использовали настройку Codeigniter.
Все, что я нашел, работает нормально, если CI находится в корневом каталоге. Но в тот момент, когда вы пытаетесь поместить его в подкаталог, это терпит неудачу.
Вот что у меня сейчас есть:
server {
listen 80;
server_name local.mysite.com;
root /Users/me/Sites/mysite;
autoindex on;
index index.html index.php;
location /api {
try_files $uri $uri/ /api/index.php;
location ~ \.php$ {
root /Users/me/Sites/mysite/api;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
}
Это просто дает мне ошибку «Файл не найден». Нет даже подходящего nginx 404. Как мне настроить NGINX для CodeIgniter в подкаталоге сервера?
Спасибо!
Для всех, кто пытается понять это и терпит неудачу, потому что ответа еще нет, вот супер простая настройка:
140 server {
141 listen 80;
142 server_name local.mysite.com;
143 root /Users/me/Sites/mysite;
144 autoindex on;
145 index index.html index.php;
146
147 location /api {
148 try_files $uri $uri/ /api/index.php$args;
149
150 }
151
152 location ~ \.php$ {
153 fastcgi_pass 127.0.0.1:9000;
154 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
155 include fastcgi_params;
156 }
157
158
159
160 }