私達に今私達のphpBBの フォーラムが Nginxの Webサーバ、 高品質で走ることをあり、かなりアパッシュHTTPDよりWebサーバの実行をよくする。 私達が直面した挑戦のいくつかは次のとおりだった:

  1. 私達はフォーラムで素晴らしいpermalinksをそうそこにであるnginxのフォーマットに変えられなければならなかった.htaccessファイルのアパッシュhttpdの書直しの規則の多く使用する。
  2. さらに私達はまた同じIPアドレス(サーバー)が多数のウェブサイトによって共有される事実上の催す組み立てのためのそれを形成しなければならなかった。

私達が行なわなければならなかったキーチェンジは書直しの状態の表現の^の直後のaを/加えていた。 アパッシュ HTTPDで 要求はURI nginxで間、頭文字を/含んでいない。私達が素晴らしいpermalinksを使用する前に私が述べたように。 phpBBのniginxのための最終的な書直しの規則は次のとおりである:

書直し^/[a-z0-9_-] *-f ([0-9] +)/か。(p ([0-9] +) \ .html)か。$ /viewforum.phpか。f=$1&start=$3は持続する;
#仮想フォルダとのトピック
書直し^/[a-z0-9_-] *-f ([0-9] +)/[a-z0-9_-] *-t ([0-9] +) (- ([0-9] +))か。\ .html$ /viewtopic.phpか。f=$1&t=$2&start=$4は持続する;
#全体的仮想フォルダと発表する
書直し^/announces/[a-z0-9_-] *-t ([0-9] +) (- ([0-9] +))か。\ .html$ /viewtopic.phpか。t=$1&start=$3は持続する;
#フォーラムID及びDELIMのないトピック
書直し^/[a-z0-9_-] */か。[a-z0-9_-] *-t ([0-9] +) (- ([0-9] +))か。\ .html$ /viewtopic.phpか。t=$1&start=$3は持続する;
#簡単の側面図を描く
書直し^/m ([0-9] +) \ .html$ /memberlist.phpか。mode=viewprofile&u=$1は持続する;
#簡単なユーザーメッセージ
書直し^/messages ([0-9] +) (- ([0-9] +))か。\ .html$ /search.phpか。author_id=$1&sr=posts&start=$3は持続する;
#簡単分ける
書直し^/g ([0-9] +) (- ([0-9] +))か。\ .html$ /memberlist.phpか。mode=group&g=$1&start=$3は持続する;
#ポスト
書直し^/p ([0-9] +) \ .html$ /viewtopic.phpか。p=$1は持続する;
#チーム
書直しの^/theチーム\ .html$ /memberlist.phpか。mode=leadersは持続する;
書直し^/[a-z0-9_-] +か。(p ([0-9] +) \ .html)か。$ /viewforum.phpか。start=$2は持続する;

アパッシュで書直しの規則と行きなさいことRewriteCond (書直しの状態)を指定できる。 nginxの同じをすることができない。 但し私が代りに何を下記のとおりだった:

(- e $request_filename) {
        壊れ目;
    }

これは既存のファイル、登録簿またはシンボリック・リンクが(マッチさせることおよび書直しの規則ことをに)それらを方向を変えるかわりに使用されることを保障する。

私達は複数のウェブサイト(事実上に催すこと)を催すのに同じIPを使用する従ってホストがforum.taragana.comのときだけ私達がそれを適用するところで私達はの内でブロックなら上記の書直しの規則を囲まなければならなかった。 それはこのようになる:

($hostの~*の^forum \ .taragana \ .com$) {
        書直し^/[a-z0-9_-] *-f ([0-9] +)/か。(p ([0-9] +) \ .html)か。$ /viewforum.phpか。f=$1&start=$3は持続する;
        …
}

phpBBのためにことをあなたのnginxサーバーのセットアップの助け望みなさい。 それを頼むために私達のフォーラムでnginxのphpBBをセットアップすることの質問を有すれば