ラズパイゼロを小型サーバーにする手順を整理しておく。
◆ラズパイOS
・RaspberryPi imagerによりOS書き込み
・SDカード内に、wifi設定ファイルを入れる
・SDカード内に、sshファイルを置く
◆.ssh\known_hostsの事前確認
C:\Users\*****\.ssh\known_hosts
古い情報のフィンガープリントが残っている場合は競合してしまっているので、
古い情報を削除する。
◆ラズパイにssh接続
>ssh pi@raspberrypi.local
※初期パスワード:raspberry
初回はこれで接続
◆固定IP設定
$ sudo nano /etc/dhcpcd.conf
以下を追記する。
------------------------------------------------
interface wlan0
static ip_address=192.168.0.100/24
static routers=192.168.0.1
static domain_name_servers=219.110.4.80
------------------------------------------------
…100のところは任意に(200までかな?)
…デフォルトゲートウェイのIPアドレス
…DNSサーバーのIPアドレス
ttp://192.168.0.100/で公開(固定IP)になる
◆raspi-config
localizationやっとく
◆raspi-config
hostname, passwordやっとく
◆アップデート
sudo apt-get update
sudo apt full-upgrade
◆nginxインストール
sudo apt install nginx
sudo systemctl start nginx
sudo systemctl enable nginx
◆htmlの確認
sudo nano /var/www/html/index.html
------------------------------------------------
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
Test Hello World from nginx
</body>
</html>
------------------------------------------------
ブラウザへのアドレス入力
/var/www/html/index.htmlは、ttp://192.168.0.100/index.html
◆phpのインストール
sudo apt install php7.3-fpm
◆nginxのphp設定ファイル
------------------------------------------------
sudo nano /etc/nginx/sites-available/default
・index.phpの追記
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html index.php;
・#を削除してコメント解除
location ~ \.php$ {
include snippets/fastcgi-php.conf;
# With php-fpm (or other unix sockets):
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
# With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
}
------------------------------------------------
・リブート
sudo systemctl restart php7.3-fpm
sudo systemctl restart nginx
◆phpの設定ファイル
------------------------------------------------
sudo nano /etc/php/7.3/fpm/php.ini
; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's
; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok
; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting
; this to 1 will cause PHP CGI to fix its paths to conform to the spec. A setting
; of zero causes PHP to behave as before. Default is 1. You should fix your scripts
; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
; http://php.net/cgi.fix-pathinfo
cgi.fix_pathinfo=0
------------------------------------------------
・リブート
sudo systemctl restart php7.3-fpm
sudo systemctl restart nginx
◆phpの表示確認
------------------------------------------------
sudo nano /var/www/html/test.php
<?php
phpinfo();
?>
------------------------------------------------
下記へアクセスしてページ表示されればOK
ttp://192.168.0.200/test.php
※グーグルキャッシュではまることあり
設定からオールクリア
◆web公開用ページの設定
sudo mkdir -p /var/www/html/weather/fig
・パーミッション変更
sudo chmod 777 /var/www/html/weather
・WinSCPで、表示用phpファイルを置く
/var/www/html/weather/index.php
・スタイルシートを設置(任意)
index.phpと同じディレクトリ内に配置
◆pipの入れ替え
◆まずは古いpipの削除(入れてなければ次へ)
apt-get remove python-pip
◆python3,pipインストール
・Python3の開発用パッケージをインストール
~$ sudo apt-get -y install python3-dev
・Python3のpipをインストール
~$ sudo apt-get -y install python3-pip
◆チェック
pi@raspberrypi:~ $ pip3 --version
pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)
あとは、都度必要なモジュールをインストール。
あ、次回はpipでしっかり管理したいなぁ。。。。
今回installがぐちゃぐちゃだし。。。