Apache-2.2

Apache 重寫為 Nginx

  • December 7, 2011

我正在嘗試在我的 Nginx 伺服器上安裝 thebuggenie。不幸的是,它位於一個子目錄中(我對此無能為力)並使用 apache 重寫它的所有 URL。當我從子目錄中移動所有內容時,我取得了一些成功,但不幸的是,它需要的主(根)目錄中有一些東西。無論如何,我有它提供的 .htaccess 文件,我需要知道如何將重寫轉換為 nginx 重寫。我的配置文件在這裡:

http://paste-bin.com/view/eb48c716

我認為主要問題是 RewriteBase ……

很抱歉將它們合併在一起,我目前無法添加超過 1 個 URL。

我知道這個問題很老,但找到了一個解決方案,用於執行 nginx 1.0.6 的 buggenie 3.1.4:

server {
   server_name site.com;
   root /var/www/site/public_html/thebuggenie;
   large_client_header_buffers 4 8k;
   index index.php index.html;

   location ~ \..*/.*\.php$ { return 403; }

   location ~ \.php {
     #add fastcgi_param values to suit environment
     fastcgi_pass 127.0.0.1:9000;
 }

   location ~ /(?<suburi>.*){
     set $suburi $1;
     try_files $uri $uri/ /index.php?url=$suburi&$args;
 }

}

一些筆記

  1. 根設置 - 雖然您可以在 /var/www/site/public_html/ 中提取和安裝,但程序希望站點根位於“thebuggenie”目錄中。
  2. 預設位置塊**location ~ /(?…**需要遵循 php fastcgi 塊。

如果有人有任何進一步的改進/更優化的方法,我很樂意看到它們。

引用自:https://serverfault.com/questions/206859