0

Nginxには2つの問題があり、誰かが私を助けてくれることを望んでいます。

私は自分のサイトに/wordpress/というエイリアスディレクトリを設定し、親ディレクトリ/ wordpressを参照するまで、すべて正常に機能しているWebルート外のファイルを指すようにしました。* .x.co.uk(xは私のドメイン名を表します)にリダイレクトしたいようです。フォローする構成。

私の他の問題は、私のAuthがルートディレクトリ以上をカバーしていないことです/ / wordpress /以外のものをキャッチするために/caluseにいるにもかかわらず、私を再び混乱させています。したがって、/に移動する場合は認証する必要がありますが、/ videoに移動すると、認証なしでサイトにアクセスできます。

私はNginxに少し慣れていないので、Wikiを読んでいるときに混乱したのは愚かなことです。

誰かアイデアはありますか?これがあなたの視聴の喜びのための私の設定です:

server {
        listen          80;
        server_name     _;
       root            /server_ws/the_stage/htdocs;
        access_log      /var/log/nginx/access.log;
        error_log       /var/log/nginx/error.log;

        error_page 404 /error/notfound;

        location /wordpress/ {
                alias /server_ws/wordpress/;
#               try_files $uri $uri/;
        }

   location ~* ^/wordpress/(.+).(jpg|jpeg|gif|css|png|js|ico|xml)$ {
           alias            /server_ws/wordpress/$1.$2;
           access_log      off;
           expires         30d;
   }

        location / {
                auth_basic "Restricted";
                auth_basic_user_file /etc/apache2/passwords;

                index   index.php;

                if ($host = 'x.co.uk') {
                        rewrite ^/(.*)$ http://www.x.co.uk/$1 permanent;
                }

                if (-f $request_filename) {
                        break;
                }

                if (!-e $request_filename) {
                        rewrite . /index.php last;
                }

                try_files $uri $uri/ /index.php;
        }

    location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {
            root            /server_ws/the_stage/htdocs;
            access_log      off;
            expires         30d;
    }

}

これが認証のいくつかのログエントリです。これは、ボットが私のrobots.txtにアクセスしようとして、認証が原因で失敗したことを示しています。

2012/05/20 11:54:10 [error] 12059#0: *2008 no user/password was provided for basic authentication, client: 108.162.215.232, server: _, request: "GET /robots.txt HTTP/1.0", host: "www.x.co.uk"

しかし、その後、自分のサイトの/ videoにアクセスすると、エラーは発生しませんが、次のアクセスログが表示されます。

xxx.xxx.xxx.xxx - - [20/May/2012:12:51:35 +0000] "GET /video?cat=gaming&sort=upload_date HTTP/1.1" 301 185 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"

/wordpressアクセスの最新のログは次のとおりです。

xxx.xxx.xx.xxx - - [20/May/2012:13:01:08 +0000] "GET /wordpress HTTP/1.1" 301 185 "-" "Opera/9.80 (Windows NT 6.1; WOW64; U; Edition Campaign 21; en) Presto/2.10.229 Version/11.64"
4

1 に答える 1

0
于 2012-05-20T05:50:15.973 に答える