web-dev-qa-db-ja.com

すべてのパーマリンクにNginx Rewrite Rule :: index.htmlが追加されました

私のWordPressサイトをNginxのあるセカンダリVPS上で動作させるために数時間働いていました。 Homeがロードされ、W3T Cacheは正常に機能していますが、パーマリンクはまだ壊れており、それぞれが404につながっています。

404 Not Found
nginx/0.8.53

私が見つけたerror.logで

2012/12/22 01:06:16 [error] 16865#0: *2 "/home/user/domain.com/web-development/pdf2html-for-cforms/index.html" is not found (2: No such file or directory), client: 125.25.32.95, server: www.domain.com, request: "GET /web-development/pdf2html-for-cforms/ HTTP/1.1", Host: "www.domain.com", referrer: "http://www.domain.com/"

だからindex.htmlはまだそれがそうであると思われる各パーマリンクを探しています..

これが/home/user/domain.com/wordpress.confにあるものです。

    # WordPress single blog rules.
    # Designed to be included in any server {} block.

    # This order might seem weird - this is attempted to match last if rules below fail.
    # http://wiki.nginx.org/HttpCoreModule
    location / {
        try_files $

uri $uri/ /index.php?$args;
}
# Add trailing slash to */wp-admin requests.
rewrite /wp-admin$ $scheme://$Host$uri/ permanent;

# Directives to send expires headers and turn off 404 error logging.
location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|Zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
       access_log off; log_not_found off; expires max;
}

私はWordPress Codexから入手しました。私はNginx上でWordPressのパーマリンクの問題を解決すると思われるNginx Helperを実行したいのですが、PHP 5.2と5.3が必要なので、できなかったので新しいPHPをコンパイルしたくありませんでした。それはまだ私の専門分野ではありません。

どうやってこれを撃って私のカスタムパーマリンク構造/%category%/%postname%/を立ち上げて実行することができますか?

更新

Nginx Libraryから新しいwordpress.confソリューションを試しました

location / {
    index index.php index.html index.htm;
    try_files $uri $uri/ /index.php?q=$uri&$args;
}

それでもindex.htmlが追加されました。そしてindex.htmlの付いたURLはもちろん見つかりません。最新のエラー:

2012/12/22 05:35:54 [error] 28148#0: *64 "/home/user/domain.com/web-development/dreamhost-vps-manager-forced-reboot-issues/index.html" is not found (2: No such file or directory), client: 125.25.32.95, server: www.domain.com, request: "GET /web-development/dreamhost-vps-manager-forced-reboot-issues/ HTTP/1.1", Host: "www.domain.com", referrer: "http://www.domain.com/"

設定ファイルがロードされているかどうかを疑問に思います。これを確認するには?

1
rhand

Wordpress.confの正しい書き換え規則は次のとおりです。

location / {
        try_files $uri $uri/ /index.php?q=$uri&$args;
    }

しかし主な問題は場所でした。私はこのwordpress.confを入れなければならなかった Dreamhostのwiki を読み間違えました。 Dreamhost のすばらしい女性が私に説明してくれました。私は彼女がこの見落としを教えてくれたことにとても感謝しています! Dreamhostでは@ /home/user/nginx/domain.comをつける必要があります。その後、私は/etc/init.d/nginx restartを使用してrootとして再起動しました、そして今パーマリンクは子猫のように追求しています!

1
rhand