現在Debianにデプロイしようとしている.NET 4.0を使用するWeb APIがあります。
私はこれを行う方法についていくつかのチュートリアルに従いました。LinuxおよびOSxでASP.net Web APIサービスを実行する。
$ /etc/nginx/sites-available/default:
server {
listen 80;
root /var/www/API/;
index index.html index.htm default.aspx Default.aspx index.cshtml Index.cshtml;
server_name localhost;
location / {
fastcgi_index Index.cshtml;
fastcgi_pass 127.0.0.1:9000;
include /etc/nginx/fastcgi_params;
}
}
以下を追加しました/etc/nginx/fastcgi_params
。
fastcgi_param PATH_INFO "";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
それからnginx
始めますmono server
。
# /etc/init.d/nginx start
# fastcgi-mono-server4 /applications=/localhost:/var/www/API/ /socket=tcp:127.0.0.1:9000 /verbose=True
その後、Webサイトにアクセスしようとすると、ログに警告とエラーが表示されますが、回避策が見つかりませんでした。
Warning: Duplicate name, SCRIPT_FILENAME, encountered. Overwriting existing value.
Error: No application defined for: localhost:80/Index.cshtml
答え1
SCRIPT_FILENAME
ファイルに2行があるため、警告が生成されます/etc/nginx/fastcgi_params
。元の値と追加した新しい値。警告メッセージを表示したくない場合は、以前の値をコメントアウトする必要があります。
このエラーは、コマンド呼び出しの構文がfastcgi-mono-server4
正しくないために発生します。要素/applications
はおそらく次のようになります。
/applications=localhost:/:/var/www/API/
バラよりこのファイルもっと学ぶ。