非原創 來自多篇百度出來的教程,文章 ;
經過數次失敗后把成功那次的操作步驟從相應文章中復制下來而已。
雖然途中記錄,收藏了部分文章教程或內容,不過大多數是安裝成功后數天才重新找的資料,不知道是否有遺漏....
#亮機
1.下載arm架構的CetnOS7 點擊下載
2.下載完后是.xz壓縮文件格式 先使用7-zip進行解壓獲得.img鏡像文件(切勿直接改后綴名)然后使用Win32DiskImager寫入到TF卡中
3.接入電源網線開機,開機指示燈正常為電源紅燈常亮->電源綠燈閃爍一會
4.通過網線接入路由,網線綠燈常亮表示工作,到路由查看分配的IP是多少
5.使用XShell/Putty等軟件進行SSH連接,賬號root,密碼centos
#關閉防火墻
臨時關閉
systemctl stop firewalld.service
關閉開機啟動?
systemctl disable firewalld.service
#關閉SELunix
查看selunix狀態?
getenforce
/usr/sbin/sestatus -v
關閉
vi /etc/selinux/config
將SELINUX=enforcing改為SELINUX=disabled
重啟生效
#連接WIFI
1.安裝wifi模塊
curl --location https://github.com/RPi-Distro/firmware-nonfree/raw/54bab3d6a6d43239c71d26464e6e10e5067ffea7/brcm80211/brcm/brcmfmac43430-sdio.bin > /usr/lib/firmware/brcm/brcmfmac43430-sdio.bin
curl --location https://github.com/RPi-Distro/firmware-nonfree/raw/54bab3d6a6d43239c71d26464e6e10e5067ffea7/brcm80211/brcm/brcmfmac43430-sdio.txt > /usr/lib/firmware/brcm/brcmfmac43430-sdio.txt
安裝完成后reboot
2.nmcli命令連接wifi
查看網卡狀態
nmcli d /nmcli d status
連接wifi
nmcli d wifi connect [SSID] password [PWD]
#設置靜態IP
vi? etc/sysconfig/network-script/ifcfg-[WIFI-SSID]?
BOOTPROTO=static? ? ? ? ? ? ? #靜態IP
IPADDR=192.168.31.160? ? ? #IP地址
GATEWAY=192.168.31.1? ? #默認網關
NETMASK=255.255.255.0? #子網掩碼
service network restart? 重啟網卡
#修改DNS
vi /etc/resolv.conf
#修改以下內容
nameserver 8.8.8.8 #google域名服務器
nameserver 8.8.4.4 #google域名服務器? 223.5.5.5? 阿里dns
nameserver 114.114.114.114?
service network restart? 重啟網卡
#rz sz安裝
yum install lrzsz
#擴展分區
其實安裝完后打開~/README有說 省略
查看分區信息
df -h
#Nginx安裝
創建一個nginx群組
groupadd -r nginx
創建一個nginx用戶
useradd -r -g nginx -s /sbin/nologin -d /usr/local/nginx -M nginx
先用系統yum源安裝依賴
yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
到官網用wget下載最新版nginx 官網鏈接
如穩定版
wget https://nginx.org/download/nginx-1.12.2.tar.gz
解壓
tar -zxvf nginx-1.12.2.tar.gz?
并進入目錄
cd nginx-1.12.2?
進行編譯安裝:
./configure (如果這步有error的話請先解決再進行make && make install? 一般都是依賴沒裝好)
make && make install
?安裝目錄在/usr/local/nginx/
完成安裝后可以手動打開nginx
/usr/local/nginx/sbin/nginx -s [stop | quit | reload]? (無最后參數則為啟動)
#注冊nginx.service
編譯安裝不帶nginx.service所以不注冊就需要使用上面的方法手動開啟
cd /usr/lib/systemd/system
touch nginx.service
vim nginx.service
加入內容并:wq
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
之后可以使用以下命令
systemctl start | status | stop | reload nginx.service
#Nginx配置文件位置
/usr/local/nginx/conf/nginx.conf
#安裝PHP7.1.6
下載
wget -c https://github.com/php/php-src/archive/php-7.1.6.tar.gz
解壓
tar -zxvf php-7.1.6.tar.gz
進入目錄
cd php-7.1.6.tar.gz
如果發現目錄中沒有configure文件的話需要在目錄中運行buildconf文件來生成
使用系統自帶yum源安裝依賴
yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel
#坑
一般安裝完依賴會進行configure 此時運行configure后我出現了libmcrypt和mcrypt的warning
再次到yum安裝提示已經安裝完成 可能是版本太舊或其他原因,嘗試編譯安裝
下載libmcrypt
wget -c https://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
解壓
tar -zxvf libmcrypt-2.5.8.tar.gz
進入目錄
cd libmcrypt-2.5.8
檢查配置、依賴
./configure
進行安裝
make && make install
下載mcrypt
wget -c https://sourceforge.net/projects/mcrypt/files/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz
解壓
tar -zxvf mcrypt-2.6.8.tar.gz
進入目錄
cd mcrypt-2.6.8
檢查配置、依賴
./configure LD_LIBRARY_PATH=/usr/local/lib
安裝
?make && make install
可能會遇到configure:error: Don't know howtodefine struct flockonthis system,set--enable-opcache=no的錯誤
vi /etc/ld.so.conf
在末尾另起一行加上
/usr/local/lib
保存后執行
ldconfig
回到PHP716的安裝
進行配置、檢查依賴
./configure \--prefix=/usr/local/php \--exec-prefix=/usr/local/php \--bindir=/usr/local/php/bin \--sbindir=/usr/local/php/sbin \--includedir=/usr/local/php/include \--libdir=/usr/local/php/lib/php \--mandir=/usr/local/php/php/man \--with-config-file-path=/usr/local/php/etc \--with-mysql-sock=/var/run/mysql/mysql.sock \--with-mcrypt \--with-openssl \--with-mysqli=shared,mysqlnd \--with-pdo-mysql=shared,mysqlnd \--with-gd \--with-iconv \--with-zlib \--enable-zip \--enable-inline-optimization \--disable-debug \--disable-rpath \--enable-shared \--enable-xml \--enable-bcmath \--enable-shmop \--enable-sysvsem \--enable-mbregex \--enable-mbstring \--enable-ftp \--enable-gd-native-ttf \--enable-pcntl \--enable-sockets \--with-xmlrpc \--enable-soap \--without-pear \--with-gettext \--enable-session \--with-curl \--with-jpeg-dir \--with-freetype-dir \--enable-opcache \--enable-fpm \--with-fpm-user=nginx \--with-fpm-group=nginx \--without-gdbm \--enable-fast-install \--disable-fileinfo
無任何錯誤信息后進行安裝
make && make install
安裝時間比較長,用了3小時左右,感覺不太正常,不過最后安裝成功沒去糾結了。
安裝完成后目錄是 /usr/local/php/
#配置PHP
將php.ini復制到目錄指定位置
先進去php7.1.6的源碼包目錄
cp php.ini-production /usr/local/php/etc/php.ini
打開php.ini并進行修改
找到extension_dir
更改為 extension_dir ="../lib/php/extensions/no-debug-non-zts-20160303/"
也可以改為絕對路徑
找到`extension`位置, 輸入以下內容
; For UNIX OSopenmysqli
extensionextension=mysqli.so
extension=pdo_mysql.so
保存退出
將php-fpm配置文件復制到指定位置
同樣到php7.1.6源碼包目錄
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
到php安裝目錄復制一份php-fpm配置文件來使用
cp /usr/local/php/etc/php-fpm.conf.default/usr/local/php/etc/php-fpm.conf
到php安裝目錄復制一份www.conf配置文件來使用
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
將PHP添加到環境變量
vim /etc/profile.d/php.sh
添加內容,保存退出
exportPATH=$PATH:/usr/local/php/bin/:/usr/local/php/sbin/
使用source命令生效剛添加的內容
source /etc/profile.d/php.sh
創建php-fpm日志目錄
mkdir -p /var/log/php-fpm/
創建`php-fpm`進程的ID(php-fpm.sock)文件運行目錄
mkdir -p /var/run/php-fpm
修改`php-fpm`進程的ID(php-fpm.sock)文件運行目錄的所屬用戶和組
chown -R nginx:nginx /var/run/php-fpm/
創建`session`存放目錄
mkdir -p /var/lib/php/session
修改`session`存放目錄的所屬用戶和組
chown -R nginx:nginx /var/lib/php
修改`php.ini`文件
vim /usr/local/php/etc/php.ini
找到 session.save_path
修改為 session.save_path ="/var/lib/php/session"
修改系統配置目錄下的`php-fpm`文件可執行權限
chmod +x /etc/init.d/php-fpm
將系統配置目錄下的`php-fpm`添加到`系統服務`
chkconfig --add php-fpm
設置`php-fpm``系統服務`為開機啟動
chkconfig php-fpm on
檢查開機啟動是否設置成功
chkconfig --list | grep php-fpm
第二,第五個是on即可 (注 是從0開始的)
測試PHP的配置文件是否無誤
php-fpm -t
記得啟動下php-fpm服務
systemctl start php-fpm.service
查看php版本
php -v
#nginx站點配置
基本沒用過nginx 所以在站點配置上踩了幾個坑 如.htaccess、pathinfo
直接上配置
server {
? ? ? ? listen? ? ? 80;
? ? ? ? server_name? localhost;
? ? ? ? root /var/www/Laravel/public;
? ? ? ? charset utf-8;
? ? ? ? #access_log? logs/host.access.log? main;
? ? ? ? location / {
? ? ? ? ? ? index index.php index.html index.htm;
? ? ? ? ? ? #REWRITE
? ? ? ? ? ? if (!-e $request_filename) {
? ? ? ? ? ? rewrite? ^/(.*)$? /index.php?s=$1? last;
? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? }
??????? location ~\.php {
? ? ? ? ? fastcgi_pass? 127.0.0.1:9000;
? ? ? ? ????? root /var/www/Laravel/public;
? ? ? ? ????? fastcgi_index? index.php;
? ? ? ? ?? ?? fastcgi_param? SCRIPT_FILENAME? /var/www/Laravel/public/$fastcgi_script_name;
? ? ? ? ? ? ? include? ? ? ? fastcgi_params;
? ? ? ? }
}