2011-12-30 3 views
1

私は自分のサーバインストールでLighttpdを使用していますが、パーマリンクはPHP FastCGIでうまくいっています。しかし、最近、私はPHP-FPMでFastCGIを変更し、私のカスタムパーマリンクはもはや動かなくなりました。LighttpdとPHP-FPMのパーマリンク

投稿/ページをクリックするたびに、wordpressは私をホーム/フロントページに連れて行きます。私のカスタムpermalinksは次のようなものです/%postname%-%post_id%.html /index.php/%postname%/や/index.php/archives/%post_id%のようなカスタムパーマリンクを使用している場合は、index.php ) できます!しかしそれは私が望むものではありません。

lighttpd.confでserver.error-handler-404 = "/index.php"を使ってみましたが、まだ運がありませんでした。

ご協力いただければ幸いです。 ありがとう!ワードプレスはそれで、表示するコンテンツを見つけ出すことができれば、あなたがそこに特殊な構造を必要とする場合や、http://redmine.lighttpd.net/wiki/1/Docs:ModRewrite
url.rewrite-once = ("^/(.+)$" => "/index.php/$1")
にないアイデアを使用しないために

答えて

1

はい、私はmodリライトを使用する必要があります。私の書き換えルールは次のようなものです:

$HTTP["host"] =~ "(^|\.)domain\.com$" { 
    url.rewrite-once = (
     # Exclude additional specific directories from rewrites 
     "^/(files)/?(.*)" => "$0", 
     "^/(mysql)/?(.*)" => "$0", 

     "^/(wp-.+).*/?" => "$0", 
     "^/(favicon.ico)" => "$0", 
     "^/(sitemap.xml)" => "$0", 
     "^/(xmlrpc.php)" => "$0", 
     "^/keyword/([A-Za-z_0-9-])/?$" => "index.php?keyword=$1", 
     "^/(.+)/?$" => "index.php/$1" 
    ) 
} 

これは完全に動作します。ありがとう!

1

してみてください。
エラーハンドラについて:CGIアプリケーションが404を返すまではトリガされません。あなたが説明したところから、wordpressは404エラーを送信する前にリダイレクトを優先します。だからそれは動作していないのです:P