2009-11-03 42 views
0

我試圖建立nginx的重寫規則如下:Nginx的重寫規則:檢查不存在的文件和文件夾

原來的結構:

domain.com/index.php?site=project

現在我嘗試使用nginx的重寫引擎來掩蓋它:

if (-f $request_filename) { 
     break; 
     } 
     if (!-f $request_filename) { 
     rewrite ^/(.+)$ /index.php?site=$1 last; 
     break; 
     } 

如何禁止文件夾(東西以斜線結尾)和不存在的文件? 我讀了很多關於

try_files

,但我無法得到它的工作。

此刻我有

try_files $uri $uri/ @app; 

location @app { 
rewrite ^/ /404.php last; 
} 

,但它不會工作。 我在做什麼錯?

另外: 我需要改變我的PHP代碼嗎? 或者是純粹的重寫罰款?

回答

0

您可以關閉autoindex以防止用戶查看文件夾。我不知道'禁止不存在的文件'是什麼意思。訪問者只獲得了404個。