작은 PHP 앱을 제공하도록 nGinx 서버 (Debian Wheezy 상자)를 구성하려고합니다. 라우팅에 문제가 있습니다.
내가 무엇이 필요 하나:
/-PHP는 허용되지 않고 .html 파일 만
/ api-/ api / method1, / api / method2 등 모든 것이 /api/index.php로 이동합니다.
그게 다야.
내가 지금 무엇을 :
server {
listen 3000;
root /home/my_user/php/my_app;
index index.html index.htm;
# Make site accessible from http://localhost/
server_name localhost;
location / {
try_files /index.html =404;
}
location /api {
try_files /index.php =404;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
# With php5-cgi alone:
#fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}
작동하는 것 :
/는 /home/my_user/php/my_app/index.html을 제공합니다. 괜찮습니다.
/ api는 404를 제공하지만 괜찮지 않습니다 (/api/index.php 파일로 이동해야 함). / api / foo도 마찬가지입니다. (예, /api/index.php 파일이 존재하며 api / 서브 디렉토리처럼 모든 사람이 읽을 수 있습니다.)
/api/index.php는 404를 제공합니다 (그러나 다른 것은 확실하지 않습니다, 무슨 일이 일어나고 있는지).
내가 찾은 nginx / php 튜토리얼에 따르면 모든 것이 정상이어야합니다. 그렇지 않습니다.
내 nginx를 어떻게 구성해야합니까?