樹莓派3b CentOS7搭建lnmp環境

非原創 來自多篇百度出來的教程,文章 ;

經過數次失敗后把成功那次的操作步驟從相應文章中復制下來而已。

雖然途中記錄,收藏了部分文章教程或內容,不過大多數是安裝成功后數天才重新找的資料,不知道是否有遺漏....



#亮機

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;

? ? ? ? }

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,786評論 6 534
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,656評論 3 419
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,697評論 0 379
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,098評論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,855評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,254評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,322評論 3 442
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,473評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,014評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,833評論 3 355
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,016評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,568評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,273評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,680評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,946評論 1 288
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,730評論 3 393
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,006評論 2 374

推薦閱讀更多精彩內容