樹苺派BUSTER (DEBIAN 10) 安裝PHP7.3 +LARAVEL+RASPBERRYPI

樹苺派在2019年升級到了新的debian 10 也提供了新版本的php 使用,所以我們今天就針對php版本重新進行安裝,基本的laravel的環境.

安裝 php-7.3 及php_fpm

sudo apt install php7.3 php7.3-curl php7.3-gd php7.3-imap php7.3-json php7.3-mysql php7.3-opcache php7.3-xmlrpc php7.3-xml php7.3-fpm php7.3-zip php7.3-mbstring php7.3-sqlite3 php7.3-cli php7.3-readline -y



修改PHP7.3-FPM 使用者改為PI

vi /etc/php/7.3/fpm/pool.d/www.conf
#—-以下內容修改
#把 www-data 改成pi
;user = www-data
;group = www-data

user = pi
group = pi

###
;listen.owner = www-data
;listen.group = www-data
改成
listen.owner = pi
listen.group = pi

啟動PHP7.3-FPM

service php7.3-fpm start
systemctl enable php7.3-fpm


安裝Composer

sudo apt-get install composer




安裝 nodejs 和 npm

sudo apt-get install nodejs
sudo apt-get install npm


因為laravel需要用到nodejs所以安裝這些套件

安裝NIGNX HTTPD 伺服器

sudo apt-get install nginx


設定 nginx 的使用者為pi

sudo vi /etc/nginx/nginx.conf

#user www-data;
user pi;


修改預設的伺服器的php

sudo vi /etc/nginx/sites-available/default

    #
    #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;
    #}

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #       deny all;
    #}
#
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;
}

# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
       deny all;
}

啟動NGINX

sudo serivce nginx start
sudo systemctl enable nginx

安裝laravel

composer create-project laravel/laravel laravel –prefer-dist
生成的laravel目錄會放置於/home/pi/laravel

設定nginx目錄指向laravel

sudo vi /etc/nginx/sites-available/default

#原始內容
    root /var/www/html;

    # Add index.php to the list if you are using PHP
    index index.html index.htm index.nginx-debian.html;
#更改為以下內容    
root /home/pi/laravel/public;

    # Add index.php to the list if you are using PHP
    index index.php index.html index.htm index.nginx-debian.html;

重新啟動NGINX

sudo serivce nginx start


打完收功

Raspberrypi 樹苺派設定固定IP

前言

樹苺派設定固定IP的方式:

啟動eth0的網路

vi /etc/network/interfaces.d/eth0

#auto eth0 是啟動!!!
auto eth0
iface eth0 inet static
address 192.168.1.222
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 168.95.1.1 8.8.8.8

DNS 設定: (一般首次設定時會)

vi /etc/reslove.conf

nameserver 168.95.1.1
nameserver 8.8.8.8

多重網路開啟時:

如果要同時開立無線網路/及有線網路時要指定default gateway

sudo route add default gw 192.168.1.1









樹苺派安裝 PHP+SQLITE+PHPLITEADMIN

前言

SQLITE 一直都是非常常用的一種小型資料庫的格式,在學習中的時候們經常會使用他來做教學,對於沒有學習經驗的同學來說,學習架設這個系統應該有助於了解資料庫系統的運作.

安裝SQLITE3 -(Database Server /資料庫伺服器)

sudo apt-get install sqlite3



安裝nginx – ( HTTPD SERVER / 網頁伺服器 )

sudo apt-get install nginx



安裝 php – (PHP /後端程式語言支援)

sudo apt install php7.0 php7.0-curl php7.0-gd php7.0-imap php7.0-json php7.0-mcrypt php7.0-mysql php7.0-opcache php7.0-xmlrpc php7.0-xml php7.0-fpm php7.0-zip php7.0-mbstring php7.0-sqlite3 php7.0-cli php7.0-readline -y

設定NGINX – 網頁伺服器

sudo vi /etc/nginx/sites-enabled/default


修改權限 – php , nginx

把www-data 改成 pi
sudo vi /etc/php/7.0/fpm/pool.d/www.conf

把www-data 改成 pi
sudo vi /etc/nginx/nginx.conf

完成: 設定並重新啟動 PHP和NGINX
sudo service php7.0-fpm restart
sudo service nginx restart


設定為開機時啟動
sudo systemctl enable php7.0-fpm
sudo systemctl enable nginx


取消開機時啟動
sudo systemctl disable php7.0-fpm
sudo systemctl disable nginx


下載:
https://www.phpliteadmin.org/download/

安裝檔案到 nginx 網頁目錄中

解開檔案到 /var/www/html/phpliteadmin

#切換目錄到NGINX 預設網頁存放目錄
cd /var/www/html

#建立程式目錄
sudo mkdir phpliteadmin

#權限開給pi帳號
sudo chown pi.pi phpliteadmin

#切換目錄到 程式的目錄
cd phpliteadmin

wget https://bitbucket.org/phpliteadmin/public/downloads/phpLiteAdmin_v1-9-7-1.zip

# 解壓縮檔案
#sudo apt-get install unzip
#如果發生沒安裝UNZIP 請跑上面這行安裝

unzip phpLiteAdmin_v1-9-7-1.zip

#改名字樣本的設定檔成正確的名字讓他生效
mv phpliteadmin.config.sample.php phpliteadmin.config.php

#編輯設定檔
vi phpliteadmin.config.php
#改掉預設admin密碼 (請一定要改)



安全防護 -防止外人連進來使用

避免奇怪的人連進來控制,所以在網頁伺服器上加上一個IP存取的限制.

sudo vi /etc/nginx/sites-enabled/default

#網址相伺這個的都要符合裡面的規定
location ~ /phpliteadmin/ {
                 #allow 允許 deny 禁止
                 #先allow 再deny 
                 allow 192.168.1.0/24;
                 allow 10.1.1.0/16;
                 deny  all;

                 #ALLOW this dir execute php page (importent)
                 include snippets/fastcgi-php.conf;
                 fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

 }

#重啟伺服器
sudo service nginx restart

打完收功

PHPLITEADMIN是一個非常簡單的網頁SQLITE管理工具,架設其實有些復雜
比起SQLITE BROWSER 的桌面軟件復雜很多,但是把可以這個教程當成給小朋友的練習