Ubuntu+ASP.NET CoreでWebサービス(3)/Nginxから転送
前回 [バージョン情報] Ubuntu Server 18.04.1 LTS .NET Core 2.1 Nginx 1.14.0 Windows10(クライアント) Visual Studio 2017 Community(開発環境) みんな知ってるWebシステムの三層構造。前回はkestrelのホストしているURLに直接リクエストを投げたが、区分としてはASPはアプリケーションサーバだろう。なのでその前段階にWebサーバを構築する。 Webサーバには最近のスタンダードらしいNginxを使ってみる。MSの公式でもNginxを使用する方法が書いてある( リンク )ので、よくある構成かと思われる。 Nginxのインストール Ubuntuの公式リポジトリに含まれているので、apt installだけでダウンロードからインストールまでできてしまう。 $sudo apt install nginx インストールしたらnginxサービスを起動する。 $sudo systemctl start nginx コンソールには何も出てこないが、curlやブラウザでアクセスすると「Welcome to nginx!」のHTMLページが返ってくる。 補足:systemctl start nginx の代わりに service nginx start でも起動する。後者はサービスのみに対応したスクリプトコマンドで、実行結果は基本的に同じようだ。ただsystemctlの方が汎用的みたいなのでこちらに慣れておく。 リバースプロキシの設定 Nginxの既定のサイトの構成ファイル[/etc/nginx/sites-available/default]に転送設定を加える。 location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ =404; } location /api/ { proxy_pass http://localhost:5000; ...