raspberry piでWebサイト公開手順

2023年6月3日

みなさん、プライベートでインターネットの世界へ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
    $ sudo systemctl start mariadb$ sudo systemctl enable
    mariadbDBにログインし初期設定
  • 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の更新エラーを解決
パソコンのある生活を良くするためのサイト

\ 最新情報をチェック /