メインコンテンツまでスキップ

Blazor WasmをUbuntuで構築する

簡易版です。(メモです)

wasm版はシークレットの保存が厳しいのとレスポンスが遅いので微妙

blazor触ってみたときのテストです。
セキュリティとかあまり考えてないです。

サーバー版よりもまとまってないんで動かないかもごめんなさい。

dotnetをインストールする

sudo apt update && \
sudo apt install -y dotnet-sdk-8.0

versionを確認する

8.0.118と2025年8月では表示(apt installなので本当に最新かは不明)

dotnet --version

ファイルの転送

Visual Studio2022で発行したものをサーバーへ転送

ファイルの移動

sudo mv blazor.zip /var/www/blazor.zip

解凍する

ついでに削除も

sudo unzip blazor.zip
sudo rm blazor.zip

入ってないなら

sudo apt -y install unzip

権限付与

sudo chmod 755 /var/www/blazor
sudo chown -R www-data:www-data /var/www/blazor
sudo find /var/www/blazor -type d -exec chmod 755 {} \;
sudo find /var/www/blazor -type f -exec chmod 644 {} \;

Nginxの例

server{
server_tokens off;

listen 80 default_server;
listen [::]:80 default_server;
server_name momijiina.com;
return 301 https://$host$request_uri;
}

server{
server_tokens off;

listen 443 ssl http2;
server_name momijiina.com;
index index.html index.htm index.nginx-debian.html;

ssl_certificate /etc/letsencrypt/live/momijiina.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/momijiina.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;

client_max_body_size 100m;
client_body_buffer_size 256k;

gzip on;
gzip_comp_level 1;
gzip_proxied any;
gzip_vary on;
gzip_buffers 4 8k;
gzip_min_length 1000;
gzip_types text/plain text/xml text/css text/javascript application/xml application/xhtml+xml application/rss+xml application/atom+xml application/javascript application/x-javascript;

add_header X-Frame-Options SAMEORIGIN;
add_header X-Content-Type-Options nosniff;
add_header Content-Security-Policy "default-src 'self' https:; style-src 'self' 'unsafe-inline' https:; script-src 'self' 'unsafe-inline' https:" always;

location /robots.txt {
alias /var/www/robots.txt;
}


location / {
root /var/www/blazor;
try_files $uri $uri/ /index.html =404;
include /etc/nginx/mime.types;
types {
application/wasm wasm;
}
default_type application/octet-stream;
}
}