web-dev-qa-db-ja.com

Nginxリバースプロキシの背後でApacheと一緒にWordpressを使用する

あなたが私の問題を解決するのを手伝ってくれることを願っています。

リバースプロキシとして専用サーバー上でngninxを実行しています。私のWordPressアプリケーションは、WebサーバーとしてApache2を実行している別のVMにあります。私がWordPressで「パーマリンク」を使用するまで、すべてがうまく機能しています。私は受け取っています:

「要求されたURL/contact-us /はこのサーバーに見つかりませんでした。」

これがnginxの私の設定です:

server {
        listen          443;
        ssl         on;
        server_name     foo.com;


        access_log  /var/log/nginx/foo.access.log;
        error_log   /var/log/nginx/foo.error.log;


        ssl_certificate           /etc/nginx/ssl-certificates/foo.de.crt;
        ssl_certificate_key       /etc/nginx/ssl-certificates/foo.de.key;


        ssl_protocols        SSLv3 TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers RC4:HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers on;
        keepalive_timeout    60;
        ssl_session_cache    shared:SSL:10m;
        ssl_session_timeout  10m;

        location / {
            proxy_pass  https://111.111.111.111;
            proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
            proxy_set_header        Host            $Host;
            proxy_set_header        X-Real-IP       $remote_addr;
            proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        }

}
server {
    listen      80;
    server_name     foo.com;

    add_header Strict-Transport-Security max-age=2592000;
    rewrite ^/.*$ https://$Host$request_uri? permanent;
}

パーマリンクが使えない理由がわかりません。同じ問題に直面している人は誰?

Advancedをありがとう!

3
allinformatix

Wordpressの書き換え規則がありません。

Apacheでは、Wordpresssが自動的に.htaccessに書き換え規則を生成するので、おそらく混乱します。 nginx環境では同じことはしません。

nginx に関するWordpressのドキュメントと、HTTP書き換え規則を参照する設定ディレクティブ、セグメンテーション設定用の "includes"ディレクティブ、および適切なパーマリンクを正しく機能させるために存在する必要がある特定のWordpress書き換えルールに特に注意してください。

あなたのオペレーティングシステム、サイト/ネットワークまたはセットアップについて多くを知らずに、私は文脈なしでコードをコピーして貼り付けることを躊躇します。ドキュメンテーションのこのセクションはかなり徹底的であり、そしてあなたが探しているものを提供するべきです。

1
Jon