스크립트 라우팅을 처리하고 모든 종류의 멋진 작업을 수행하는 PHP 스크립트가 있습니다. 원래 Apache 용으로 설계되었지만 일부 상자에 대해 nginx로 마이그레이션하려고합니다. 지금은 테스트 서버에서 문제를 해결하려고합니다.
따라서 스크립트가 작동하는 방식은 .htaccess
파일을 사용하여 디렉토리 (Apache에서)에 대한 모든 HTTP 트래픽을 가로채는 것 입니다. 그 모습은 다음과 같습니다.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.+$ index.php [L]
</IfModule>
꽤 직설적 인. 모든 요청은 index.php
단순하고 단순합니다.
나는 nginx에서 그 행동을 모방하려고하지만 아직 방법을 찾지 못했습니다. 누구든지 제안이 있습니까?
nginx.conf
현재 내 파일 의 사본이 있습니다. 그것이 작동하도록 노력하기 위해 고안되었습니다. 주로 복사 / 붙여 넣기 작업.
user www-data;
worker_processes 1;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
# multi_accept on;
}
http {
include /etc/nginx/mime.types;
default_type text/plain;
include /etc/nginx/conf.d/*.conf;
server {
listen 80;
server_name swingset.serverboy.net;
access_log /var/log/nginx/net.serverboy.swingset.access_log;
error_log /var/log/nginx/net.serverboy.swingset.error_log warn;
root /var/www/swingset;
index index.php index.html;
fastcgi_index index.php;
location ~ \.php {
include /etc/nginx/fastcgi_params;
keepalive_timeout 0;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass 127.0.0.1:9000;
}
}
}
.php
예를 들어 다음과 같이 작동/doesNotExist.ph
하지만 작동하지 않습니다 (대신 404가 됨) :/doesNotExist.php