EDIT ONE: Apacheを使用してWindows 7でもこれをテストしましたが、まったく同じことが起こります。これは、問題が主にホームページへのすべてのページのルーティングであることを意味します。
2 番目の編集: #yii IRC チャネルでの提案に従って、.htaccess ファイルの内容を、作業中のプロジェクトからの非常に単純化されたものに置き換えました。ただし、これによって問題が変化することはありません。
EDIT 3:コードにいくつかの変更を加えて、これがうまく機能するようになりました。以下の回答
ワークステーションにインポートした Yii Framework で書かれたサイトをインポートしようとしています。ページを読み込もうとしても、メイン ページに直接移動するだけであるという問題が発生しています。これは、ルート リクエストをロードした場合とまったく同じように、すべてのリクエストが本質的にルーティングされることを意味します。アクセス ログまたはエラー ログにエラーは表示されません。nginx のアクセス ログでは、リクエストは次のようになります。ここで、「example」は「localhost」、「127.0.0.1」、またはサーバーの IP アドレスです。
Accessing root ( http://example/ ):
127.0.0.1 - - [08/May/2013:13:05:28 -0700]
"GET / HTTP/1.1" 200 8436 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:20.0) Gecko/20100101 Firefox/20.0"
Accessing login ( http://example/site/login ):
127.0.0.1 - - [08/May/2013:13:07:01 -0700]
"GET /site/login HTTP/1.1" 200 8427 "http://example/" "Mozilla/5.0 (X11; Linux x86_64; rv:20.0) Gecko/20100101 Firefox/20.0"
Accessing the same controller by http://example/index.php?r=site/login:
127.0.0.1 - - [08/May/2013:14:40:45 -0700]
"GET /index.php?r=site/login HTTP/1.1" 200 8419 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:20.0) Gecko/20100101 Firefox/20.0"
他に 2 つの Yii プロジェクトがセットアップされていることを考えると、それらは同様のサーバー構成を使用して正常に動作しますが、これも以下に貼り付けます。私はまだ熱心ではありません。他のサイトからインポートした作業中のプロジェクトで、共有、試行、または比較できる何か他の提案があれば、大歓迎です:)
編集:実際に使用していたものに近い構成に切り替えました。これは、プロジェクトが Windows 上の Apache で実行されているときに同じ問題を抱えていることを考えると、おそらく無関係です。
server {
server_name localhost;
listen 80;
keepalive_timeout 70;
root /usr/www/[project name omitted]/public_html;
client_max_body_size 4M;
client_body_buffer_size 4M;
client_header_buffer_size 4M;
location / {
try_files $uri $uri/ /index.php?$args;
autoindex on;
}
location ^~ /data/ {
expires 30d;
}
# redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
#Disable logging for favicon
location = /favicon.ico {
log_not_found off;
access_log off;
}
#Disable logging for robots.txt
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location ~ /themes/\w+/views {
deny all;
access_log off;
log_not_found off;
}
# Pass all .php files onto a php-fpm/php-fcgi server.
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
try_files $uri =404;
#fastcgi_intercept_errors on;
#fastcgi_connect_timeout 20;
fastcgi_send_timeout 20;
fastcgi_read_timeout 600; # For xdebug to work alright
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}
}