小型ボードコンピュータでSOHOスタート

Raspiサーバー Apache+PHP+MySQL

article of LAMP
Rasbian インストール

インストールにmicroSDカードを用意します。32GB以上の大容量もありますが、正規品かどうか確かなものを選びます。

バックアップやルートファイルSSD(HDD)化へカスタマイズするために初期段階では16GB程度が都合が良さそうです。

インストール、設定後はオリジナル版として保存しておきます。

インストールに便利なソフトウェア
  • Raspberry Pi Imager https://www.raspberrypi.org/software/
  • SDメモリーカードフォーマッター https://www.sdcard.org/ja/downloads-2/formatter-2/
インストールと初期設定
  1. Imagerを起動しOperatingSystemを選択します。Pi OS Lite(32bit)0.4GBを選択しました。
  2. SD(マイクロ)に書き込みが終了したら、一度PCから取り外し再度ドライブとしてPCに接続します。
  3. ルートにsshファイルを配置します。
SSHで接続
  1. 電源を入れSSHで接続します。SSH Tera Term
  2. IPアドレスが不明な場合はAdvanced IP Scnner等でローカルを検索します。
  3. 接続出来たらRaspi-configで地域、言語設定等を設定
  4. $ apt-get update そして $ apt-get upgrade
vsftpd FTPサーバーをインストール
(しておくと後々設定が楽です。)
  1. $ apt-get install vsftpd
  2. /etc/ftpusers rootを#コメントアウト
  3. vsftpd.conf 
  4. anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    use_localtime=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    ascii_upload_enable=YES
    ascii_download_enable=YES
    secure_chroot_dir=/var/run/vsftpd/empty
    pam_service_name=vsftpd
    rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
    rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
    ssl_enable=NO
    utf8_filesystem=YES
    
  5. $ service vsftpd restart
Apache2 インストール
  1. $ apt-get -y install apache2
  2. $ a2enmod rewrite ※rewriteモードをON
  3. /etc/apache2/sites-available/000-default.conf
    
    DocumentRoot /var/www/html/
    
    <Directory /var/www/html/>
      Options Indexes FollowSymLinks
      AllowOverride All
      Require all granted
    </Directory>
    
  4. $ service apache2 restart
PHP5.6 MySQL(mariadb)インストール
  1. PHP5システム要件のアプリケーションのために5.6を入れます。
  2. $ wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add -
    echo "deb https://packages.sury.org/php/ buster main" | sudo tee /etc/apt/sources.list.d/php.list
    $ apt-get update
    
    $ apt-get install php5.6 php5.6-curl php5.6-cli php5.6-pdo php5.6-mysql
    
    $ a2enmod php5.6
    $ apachectl restart
    $ update-alternatives --set php /usr/bin/php5.6
    
  3. $ service apache2 restart
  4. $ apt-get -y install mariadb-server
  5. $ apt-get -y install phpmyadmin php5.6-mbstring php-gettext
  6. $ ln -s /etc/apache2/mods-available/cgi.load /etc/apache2/mods-enabled/cgi.load
  7. /etc/php/5.6/apache2/php.ini
    mbstring.language = Japanese
    mbstring.internal_encoding = UTF-8
    mbstring.http_input = pass
    mbstring.http_output = pass
    mbstring.encoding_translation = Off
    mbstring.detect_order = auto
    mbstring.substitute_character = none;
    mbstring.func_overload = 0
    mbstring.strict_detection = Off
    mbstring.http_output_conv_mimetype=
    
    fqdn.conf にServernameを設定
    
    $ cd /etc/apache2/conf-available/
    $ touch fqdn.conf
    $ vi fqdn.conf
     ServerName Rapberrypi
    $ a2enconf fqdn
    $ service apache2 restart