0

Windowsでzendフレームワークを使用してローカル開発用にnginx+phpWebサーバーをセットアップしています。私は通常、プロジェクトごとにwwwルートに新しいフォルダーを作成してから、プロジェクトを書き換えるためのconfファイルを作成します。

ここでのエラーは、静的コンテンツにアクセスできないことです。画像ファイルまたはcssを開こうとすると、500エラーが発生しました。そして、私は私のプロジェクトのconfが100%正しいこともしません..:\

助けてくれませんか?

これらは私のconfファイルです:

fastcgi.conf

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  HTTPS              $https if_not_empty;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;

nginx.conf

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    keepalive_timeout  65;

    gzip  on;

    upstream php {
        server       localhost:8993;
        server       localhost:8994;
        server       localhost:8995;
        server       localhost:8996;
        server       localhost:8997;
        }

    server {
        listen       *;
        server_name_in_redirect  off;

        charset utf-8;

        location / {
            root   www;
            index  index.php index.html index.htm;
        }

        error_page   404              /404.html;
        location = /404.html {
        }

        location ~ \.php$ {
            root           www;
            try_files      $uri =404;
            fastcgi_pass   php;
            include        fastcgi.conf;
        }

        location ~ /\.ht {
            deny  all;
        }

        include sites/*.conf;
    }
}

プロジェクト設定の例

location /zproject {
    root www/zproject;
    try_files $uri $uri/ /zproject/index.php$is_args$args;
}

----- UPDATE(コメントからのリクエスト)

access.logから

127.0.0.1 --- [31 / Jul / 2012:11:15:46 +0100] "GET /zproject/content/files/packs.png HTTP / 1.1" 404 43648 "http://localhost/zproject""Mozilla / 5.0(Windows NT 6.1; WOW64)AppleWebKit /536.11(KHTML、Geckoなど)Chrome / 20.0.1132.57 Safari / 536.11 "

error.logから

2012/07/31 11:15:46[エラー]53696#53724:* 5 CreateFile() "D:\ webserver / html / zproject / content / files / packs.png"が失敗しました(3:システムがパスを見つけることができません指定)、クライアント:127.0.0.1、サーバー:、リクエスト: "GET /zproject/content/files/packs.png HTTP / 1.1"、ホスト: "localhost"、リファラー:"http://localhost/zproject"

私が見る限り、彼は間違った場所でファイルを探しているようです。packs.pngの正しい場所は、「D:\ webserver / html / ....」ではなく、「D:\ webserver / www / zproject / content / files/packs.png」です。

4

1 に答える 1

0

わかりました。追加する必要があります:root "D:\ webserver \ www"; メインサーバー構成に。すべてが意図したとおりに機能しているようです:)

于 2012-07-31T10:30:09.333 に答える