fedora31 php7.4 nginx mysql(mariadb)

此文是記錄在fedora31中配置開發(fā)環(huán)境的記錄遇到的坑和填坑的過程糕殉。
操作前提是已經(jīng)修改fedora的鏡像源,否則下載會(huì)很慢殖告。

更新你的Fedora系統(tǒng)阿蝶,運(yùn)行以下命令:

sudo dnf -y update

安裝php7.4

1、將Remi存儲(chǔ)庫添加到Fedora系統(tǒng)中:

sudo dnf install -y  http://rpms.remirepo.net/fedora/remi-release-31.rpm

說明:根據(jù)你的系統(tǒng)是Fedora 29或是Fedora 28選擇相應(yīng)的Remi存儲(chǔ)庫黄绩。

2羡洁、要在Fedora下安裝PHP 7.4,請(qǐng)啟用存儲(chǔ)庫并安裝PHP 7.4軟件包:

sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --set-enabled remi-php74
sudo dnf config-manager --set-enabled remi

3爽丹、可以使用remi-7.4指令來安裝PHP 7.4:

sudo dnf module install php:remi-7.4

安裝完畢查看一下:

[jerry@anonymous ~]$ php-fpm -v
PHP 7.4.2 (fpm-fcgi) (built: Jan 21 2020 11:35:20)
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
[jerry@anonymous ~]$ php -v
PHP 7.4.2 (cli) (built: Jan 21 2020 11:35:20) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies

安裝nginx

sudo yum install nginx
或
sudo dnf install nginx

設(shè)置nginx隨系統(tǒng)啟動(dòng)

sudo systemctl enable nginx.service

現(xiàn)在啟動(dòng)nginx

sudo systemctl start nginx.service

默認(rèn)的PHP配置文件是etc/php.ini筑煮,對(duì)于Nginx Web服務(wù)器,使用PHP-FPM(FastCGI Process Manager)配置文件設(shè)置CGI設(shè)置/etc/php-fpm.d/www.conf

首先修改php-fpm的運(yùn)行用戶习劫,因?yàn)閱?dòng)用戶關(guān)系到系統(tǒng)安全咆瘟,默認(rèn)的用戶是apache,我們改為nginx诽里,如果你使用的用戶名是www或者是www-data袒餐,請(qǐng)修改為自己的用戶名,一定要與運(yùn)行文件同一個(gè)用戶和用戶組才能正確運(yùn)行谤狡,否則會(huì)出現(xiàn)Permission denied灸眼。
修改/etc/php-fpm.d/www.conf配置文件里的user和group為:

user = nginx
group = nginx

當(dāng)然默認(rèn)安裝好的nginx啟動(dòng)的用戶為nginx,配置文件在/etc/nginx/nginx.conf墓懂,首行就是啟動(dòng)用戶名了焰宣。

修改PHP設(shè)置后,你需要重新啟動(dòng)Web服務(wù)器:

sudo systemctl restart nginx

安裝mariadb

mysql的開源版捕仔,原mysql更改為這個(gè)匕积,是原mysql作者的開源版

sudo yum install mysql-server mysql-devel mysql
or
sudo dnf install mariadb-server
[jerry@anonymous ~]$ sudo vim /etc/my.cnf.d/mariadb-server.cnf
/etc/my.cnf.d/mariadb-server.cnf

添加:character-set-server=utf8

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mariadb/mariadb.log
pid-file=/run/mariadb/mariadb.pid
character-set-server=utf8
[jerry@anonymous ~]$ mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 16
Server version: 10.3.21-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
啟動(dòng)相應(yīng)服務(wù)的命令:
sudo systemctl start nginx.service
sudo systemctl start mariadb.service
sudo systemctl start php-fpm.service
systemctl status nginx # 查看nginx服務(wù)的運(yùn)行狀態(tài)
systemctl start nginx # 啟動(dòng)nginx服務(wù)
systemctl stop nginx # 關(guān)閉nginx服務(wù)
systemctl enable nginx # 開啟自啟nginx服務(wù)
systemctl disable nginx # 取消nginx開啟自啟

遇到的坑:

1. web目錄沒有權(quán)限盈罐,導(dǎo)致網(wǎng)站一直返回403狀態(tài),原因selinux的原因
查看當(dāng)前selinux的狀態(tài)闪唆。

/usr/sbin/sestatus

將SELINUX=enforcing 修改為 SELINUX=disabled 狀態(tài)盅粪。

vi /etc/selinux/config

#SELINUX=enforcing
SELINUX=disabled

重啟生效。reboot悄蕾。

2. php-fpm 的啟動(dòng)用戶票顾,修改為與web目錄的用戶一致的用戶運(yùn)行
修改/etc/php-fpm.d/www.conf文件里的user和group

user = nginx
group = nginx

3. php-fpm已啟動(dòng)卻沒有監(jiān)聽9000端口導(dǎo)致php的文件返回404狀態(tài),非php文件可以正常訪問
原因: nginx與php-fpm通信的兩種方式: tcp socket 和 unix socket帆调。

  • unix socket 是一種終端奠骄,可以使同一臺(tái)操作系統(tǒng)上的兩個(gè)或多個(gè)進(jìn)程進(jìn)行數(shù)據(jù)通信。這種方式需要再nginx配置文件中填寫php-fpm的pid文件位置番刊,效率要比tcp socket高含鳞。
  • tcp socket的優(yōu)點(diǎn)是可以跨服務(wù)器,當(dāng)nginx和php-fpm不在同一臺(tái)機(jī)器上時(shí)撵枢,只能使用這種方式民晒。

找到/etc/php-fpm.d/www.conf文件

listen = /run/php-fpm/www.sock

然后修改/etc/nginx/nginx.conf文件里面 http 下面的 server 設(shè)置,添加下面代碼:

        location ~ \.php$ {
            #fastcgi_pass   127.0.0.1:9000;
            # here is listen from /etc/php-fpm.d/www.conf setting
            fastcgi_pass   unix:/run/php-fpm/www.sock;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

好了锄禽,經(jīng)過上面的設(shè)置基本已經(jīng)完成了潜必。

安全設(shè)置網(wǎng)站文件:

一般是用 www 用戶來跑 lnmp 架構(gòu)
為了系統(tǒng)出現(xiàn)漏洞的時(shí)候,讓黑客也不能修改系統(tǒng)程序沃但,所以:

網(wǎng)站上的 php 文件屬主是非 www 用戶磁滚,給予644權(quán)限。
網(wǎng)站上的所有目錄是755權(quán)限
網(wǎng)站如果有應(yīng)用需要寫文件的目錄宵晚,比如上傳目錄垂攘,那么此目錄和目錄下的所有文件屬主是 www 用戶。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末淤刃,一起剝皮案震驚了整個(gè)濱河市晒他,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,657評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件司倚,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡灼伤,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門咪鲜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來狐赡,“玉大人,你說我怎么就攤上這事疟丙∮敝叮” “怎么了鸟雏?”我有些...
    開封第一講書人閱讀 164,057評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長览祖。 經(jīng)常有香客問我崔慧,道長,這世上最難降的妖魔是什么穴墅? 我笑而不...
    開封第一講書人閱讀 58,509評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮温自,結(jié)果婚禮上玄货,老公的妹妹穿的比我還像新娘。我一直安慰自己悼泌,他們只是感情好松捉,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,562評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著馆里,像睡著了一般隘世。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上鸠踪,一...
    開封第一講書人閱讀 51,443評(píng)論 1 302
  • 那天丙者,我揣著相機(jī)與錄音,去河邊找鬼营密。 笑死械媒,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的评汰。 我是一名探鬼主播纷捞,決...
    沈念sama閱讀 40,251評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼被去!你這毒婦竟也來了主儡?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,129評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤惨缆,失蹤者是張志新(化名)和其女友劉穎糜值,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體踪央,經(jīng)...
    沈念sama閱讀 45,561評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡臀玄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,779評(píng)論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了畅蹂。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片健无。...
    茶點(diǎn)故事閱讀 39,902評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖液斜,靈堂內(nèi)的尸體忽然破棺而出累贤,到底是詐尸還是另有隱情叠穆,我是刑警寧澤,帶...
    沈念sama閱讀 35,621評(píng)論 5 345
  • 正文 年R本政府宣布臼膏,位于F島的核電站硼被,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏渗磅。R本人自食惡果不足惜嚷硫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,220評(píng)論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望始鱼。 院中可真熱鬧仔掸,春花似錦、人聲如沸医清。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽会烙。三九已至负懦,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間柏腻,已是汗流浹背纸厉。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留葫盼,地道東北人残腌。 一個(gè)月前我還...
    沈念sama閱讀 48,025評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像贫导,于是被迫代替她去往敵國和親抛猫。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,843評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容