raspberry piでWebサイト公開手順
みなさん、プライベートでインターネットの世界へWeb配信をしてみませんか?
※これは、私が通信の技術畑で働いてきた1つの終着的な内容・かたちと認識しています。
■適用範囲
レンタルサーバーサービス(1,500円/月)わざわざ利用せずに、安価にWebサイトを立ち上げたい場合
まずもってアプリ、ソフトウェア、フレームワーク、テンプレートの利用に制約なく自由にサーバー学習したい場合
今回はレンタルサーバーサービスを使わずに自前のraspberrypiを使ってブログ作成環境を作ってみました。
ドメイン取得(指定事業者) DNSサーバー設定(指定事業者)
NSレコード・・・取得したドメインとGIPを設定する
- WEBサーバー設定(nginx)
$ sudo apt-get install nginx
$ sudo vi /etc/nginx/nginx.conf
$ sudo vi /etc/nginx/sites-available/default/var/www/html/index.nginx-debian.html
- ブロードバンドルーター
ポート転送設定・・・GIPとLIPを括り付ける等 - SSL設(cerbot)インストール
$ sudo apt-get install certbot・・・インストール
$ sudo certbot certonly・・・証明書の発行
$ sudo vi /etc/nginx/sites-available/default
$ sudo systemctl restart nginx
ここまでの作業でWEB公開は完了です。
SSL証明書の定期更新
$ cat /etc/cron.d/certbot
0 */12 * * * root certbot renew –post-hook “systemctl reload nginx" > /tmp/certbot-renew.log 2>&10 */12 * * * root certbot renew –post-hook “systemctl reload nginx" > /tmp/certbot-renew.log 2>&1
さらにWordPress(ブログ編集)を使いたい方はこちらの作業を行う必要があります。
- phpインストール
$ sudo apt-get install php php-fpm php-mysql php-json php-mbstring php-gd
$ sudo vi /etc/nginx/sites-available/default - MariaDBインストール
$ sudo apt install mariadb-client mariadb-server
mariadbDBにログインし初期設定
$ sudo systemctl start mariadb$ sudo systemctl enable - wordpressインストール
$ sudo vi /etc/nginx/conf.d/wordpress.conf
$ sudo vi /var/www/html/wordpress/wp-config.php - wordpressにて使用したいテンプレートをファイルアップロードする場合、ファイルサイズ制限でエラーになることがあります。
413 Request Entity Too Large
そういった場合、下記のファイルを修正することでアップロード可能になります。/etc/nginx/conf.d/wordpress.conf へ追加
client_max_body_size 30M;
/etc/php/7.4/fpm/php.ini を変更 max_input_time = 600
post_max_size = 256M
upload_max_filesize = 128M
memory_limit = 512M
※設定値は参考です。
参考にさせていただいたURL
https://www.suzu-ha.com/entry/2022/12/11/172619
https://qiita.com/nyokinyoki1848/items/48bf7fa3f253d93edd93
Let’s Encryptの更新エラーを解決
パソコンのある生活を良くするためのサイト