新版PHP運(yùn)行環(huán)境安裝整理

閑來沒事整理一下php運(yùn)行環(huán)境的安裝株扛,包括windows系統(tǒng)尤筐、linux系統(tǒng)下獨(dú)立安裝以及集成環(huán)境安裝,環(huán)境搭建組合包括wamp洞就、wnmp盆繁、lnmp,也沒啥技術(shù)難度旬蟋,只為建個(gè)檔油昂,以后不再到網(wǎng)上找了,分享一個(gè)倾贰,若大家覺得點(diǎn)用冕碟,歡迎拿走。

1.Windows系統(tǒng)環(huán)境

版本選項(xiàng):
Windows: 64位
Php版本:php-8.0.3
Apache版本/Nginx(任一匆浙,但不建議nginx):Apache2.4.46 / nginx-1.18.0
Mysql版本:8.0.23

安裝目錄(不安裝在c盤):E:\php\env
自定義項(xiàng)目根目錄:E:\php\www

環(huán)境目錄(nginx安寺、Apache任選一安裝)

1.1.PHP安裝

(一)下載壓縮包"
php-8.0.3-win32-vs16-x64.zip (VS16 x64 Thread Safe)"解壓到指定安裝目錄
官網(wǎng)下載地址:
https://windows.php.net/download/(windows版)
說明:php只需下載配置即可

(二)進(jìn)入目錄,拷貝php.ini-production一份命名為php.ini作為php配置文件

(三)Php.ini配置

a. 設(shè)置擴(kuò)展文件路徑吞彤,找到extension_dir我衬,去掉前面分號并配置擴(kuò)展庫目錄叹放,如:
extension_dir = "E:\php\env\php-8.0.3\ext";
b. 根據(jù)需求打開gd挠羔、mysqli井仰、pdo_mysql、mbstring破加、curl等常用擴(kuò)展使用俱恶,去掉前面分號即可,如:extension=gd2范舀;
c. 設(shè)置時(shí)區(qū)為中國地區(qū)合是,date.timezone =PRC;
d. 設(shè)置支持短標(biāo)簽寫法锭环,short_open_tag = Off改為short_open_tag = On聪全;
e. 開啟cgi,以支持nginx與php通信(apache則采用模塊化與php通信)辅辩,分別找到以下關(guān)鍵詞進(jìn)行配置(去掉前面分號;開啟)如下:
cgi.force_redirect = 1
cgi.fix_pathinfo=1
cgi.rfc2616_headers = 0
f. 配置session存儲目錄难礼,為了安全盡可能設(shè)置為外網(wǎng)訪問不到的服務(wù)器目錄
session.save_path = "C:/WINDOWS/Temp"

說明:下載的php版本需要VS16 x64 Thread Safe版,否則沒有apache所需dll庫玫锋,具體原因自行百度蛾茉。

(四)(選項(xiàng))配置php系統(tǒng)環(huán)境變量

配置php系統(tǒng)環(huán)境變量

說明:執(zhí)行php命令若報(bào)錯:PHP Warning: 'C:\Windows\SYSTEM32\VCRUNTIME140.dll' 14.14 is not compatible......需要Visual Studio 2015、2017 和 2019支持撩鹿,根據(jù)實(shí)際情況下載安裝谦炬。

1.2. APACHE安裝

(一) 下載壓縮包
httpd-2.4.46-o111j-x64-vc15.zip并解壓到指定目錄
官網(wǎng)下載地址:
https://www.apachehaus.com/cgi-bin/download.plx(windows版本)

(二)編輯配置文件conf/httpd.conf如下:

a. 修改Define SRVROOT "/Apache24" 為apache具體安裝目錄 Define SRVROOT "E:/php/env/httpd-2.4.46" ;
b. 添加對php模塊的支持节沦,搜索關(guān)鍵詞"#LoadModule"找到模塊加載末尾行追加如下內(nèi)容:
#對php支持 
LoadModule php_module "E:/php/env/php-8.0.3/php8apache2_4.dll" 
PHPIniDir "E:/php/env/php-8.0.3" 
AddType application/x-httpd-php .php .htm .html
c. 自定義項(xiàng)目根目錄键思,查找關(guān)鍵詞"DocumentRoot"修改如下內(nèi)容:
DocumentRoot "${SRVROOT}/htdocs" 
<Directory "${SRVROOT}/htdocs">
#修改為如下內(nèi)容:
DocumentRoot "E:/php/www" 
<Directory "E:/php/www">
說明:提前新建好www根目錄
d. 取消目錄索引(即禁止曝出項(xiàng)目目錄結(jié)構(gòu)),Options Indexes FollowSymLinks 改為Options FollowSymLinks甫贯;
e. 查找"DirectoryIndex"設(shè)置根目錄默認(rèn)訪問頁面如下:
<IfModule dir_module> 
DirectoryIndex index.php index.htm index.html 
</IfModule>

(三)安裝apache系統(tǒng)服務(wù)稚机,cmd命令窗口,切換到E:\php\env\httpd-2.4.46\bin目錄获搏, 執(zhí)行httpd.exe -k install -n Apache2.4(若刪除服務(wù):sc delete Apache2.4)赖条;

(四)啟動apache服務(wù),在電腦服務(wù)中找到apache點(diǎn)擊啟動或通過E:\php\env\httpd-2.4.46\bin\ApacheMonitor.exe進(jìn)行啟動常熙;

apache啟動狀態(tài)
ApacheMonitor.exe管理效果

(五)php運(yùn)行環(huán)境測試:在www目錄中新建index.php纬乍,輸入探針函數(shù)測試web服務(wù)以及各項(xiàng)配置是否生效,內(nèi)容如下:
<?php phpinfo(); ?>

瀏覽器輸入http://localhost運(yùn)行成功效果

1.3.MYSQL安裝

(一)下載壓縮包mysql-8.0.23-winx64.zip并解壓到指定目錄
官網(wǎng)下載地址:
https://dev.mysql.com/downloads/mysql/
國內(nèi)鏡像地址:中科大:
http://mirrors.ustc.edu.cn/mysql-ftp/Downloads/裸卫,搜狐:
http://mirrors.sohu.com/mysql/MySQL-8.0/

(二)mysql目錄下新建配置文件my.ini仿贬,添加內(nèi)容如下:

[mysqld] 
# 端口 
port=3306 
# 安裝目錄 
basedir=E:/php/env/mysql-8.0.23 
# 數(shù)據(jù)存放目錄 
datadir=E:/php/env/mysql-8.0.23/data 
# mysql服務(wù)器支持的最大并發(fā)連接數(shù)(用戶數(shù)) 
max_connections=200 
# 最大連接錯誤次數(shù) 
max_connect_errors=10 
# 默認(rèn)編碼 
character-set-server=utf8mb4 
# 默認(rèn)表的存儲引擎 
default-storage-engine=INNODB 
# 默認(rèn)使用"mysql_native_password"插件認(rèn)證 
default_authentication_plugin=mysql_native_password 
[mysql] 
# 默認(rèn)使用編碼utf8mb4 
default-character-set=utf8mb4 
[client] 
# 客戶端連接服務(wù)端默認(rèn)使用的端口 
port=3306 
default-character-set=utf8mb4

說明:my.ini根據(jù)優(yōu)化需求配置

(三)初始化數(shù)據(jù)庫:系統(tǒng)管理員身份運(yùn)行cmd,切換到E:\php\env\mysql-8.0.23\bin目錄(之后步驟都在這個(gè)目錄執(zhí)行命令)墓贿,執(zhí)行命令:mysqld --initialize --console茧泪,記住初始化過程中生成的臨時(shí)密碼蜓氨,后續(xù)修改密碼使用;

初始化數(shù)據(jù)庫队伟,獲取臨時(shí)密碼

(四)安裝mysql系統(tǒng)服務(wù)并運(yùn)行服務(wù)穴吹,執(zhí)行命令mysqld --install Mysql,之后嗜侮,執(zhí)行net start mysql港令;

安裝mysql系統(tǒng)服務(wù)并啟動服務(wù)

(五)修改密碼:執(zhí)行命令mysql -u root -p,輸入臨時(shí)密碼锈颗,登錄后執(zhí)行命令A(yù)LTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root'; 修改新密碼為root(不建議密碼設(shè)置為root)顷霹;

登錄mysql

(六)配置mysql系統(tǒng)環(huán)境變量(可選項(xiàng));

配置mysql環(huán)境變量(可選項(xiàng))

(七)MYSQL安裝完成击吱,可通過命令淋淀、Navicat等數(shù)據(jù)庫工具測試。

查看mysql版本

1.4.NGINX安裝

安裝wnmp組合的nginx覆醇,若與iis或apache服務(wù)的端口沖突绅喉,設(shè)置其他端口或停掉其他服務(wù)后再運(yùn)行nginx。

(一)下載壓縮包nginx-1.18.0.zip(windows版)并解壓到指定目錄
官網(wǎng)下載地址:
http://nginx.org/en/download.html

(二)點(diǎn)擊nginx.exe測試nginx服務(wù)叫乌,出現(xiàn)"welcome..."代表運(yùn)行成功

nginx運(yùn)行成功

(三)修改配置文件,指定項(xiàng)目根目錄以及開通對php的支持

a. 指定根目錄以及默認(rèn)訪問頁面

location / {            
  root   html;             
  index  index.html index.htm;         
}
以上內(nèi)容改為:
location / {             
  root   E:/php/www;             
  index  index.php index.html index.htm;         
}

b. 開通對php的支持徽缚,去掉前面的#注釋

#location ~ \.php$ { 
#    root           html; 
#    fastcgi_pass   127.0.0.1:9000; 
#    fastcgi_index  index.php; 
#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name; 
#    include        fastcgi_params; 
#}

#并修改內(nèi)容為:

location ~ \.php$ {            
  root           E:/php/www;            
  fastcgi_pass   127.0.0.1:9000;            
  fastcgi_index  index.php;            
  fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;            
  include        fastcgi_params;         
}

(四)下載RunHiddenConsole用于快速啟動憨奸、停止nginx與php的通信

a. 百度下載RunHiddenConsole,將RunHiddenConsole.exe凿试、start_nginx.bat排宰、stop_nginx.bat拷貝到nginx目錄下,并分別修改start_nginx.bat那婉、stop_nginx.bat內(nèi)容板甘;

RunHiddenConsole目錄結(jié)構(gòu)

start_nginx.bat內(nèi)容如下:

@echo off 
REM Windows 下無效  
REM set PHP_FCGI_CHILDREN=5 
REM 每個(gè)進(jìn)程處理的最大請求數(shù),或設(shè)置為 Windows 環(huán)境變量  
set PHP_FCGI_MAX_REQUESTS=1000 
echo Starting PHP FastCGI... 
RunHiddenConsole E:/php/env/php-8.0.3/php-cgi.exe -b 127.0.0.1:9000 -c E:/php/env/php-8.0.3/php.ini 
echo Starting nginx... 
RunHiddenConsole E:/php/env/nginx-1.18.0/nginx.exe -p E:/php/env/nginx-1.18.0

stop_nginx.bat內(nèi)容如下:

@echo off 
echo Stopping nginx...   
taskkill /F /IM nginx.exe > nul 
echo Stopping PHP FastCGI... 
taskkill /F /IM php-cgi.exe > nul 
exit

b. 測試:E:\php\www項(xiàng)目根目錄下新建hello.php文件详炬,雙擊運(yùn)行start_nginx.bat盐类,瀏覽器訪問http://localhost/hello.php測試結(jié)果,雙擊stop_nginx.bat則停止nginx服務(wù)呛谜。

wnmp環(huán)境運(yùn)行結(jié)果

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末在跳,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子隐岛,更是在濱河造成了極大的恐慌猫妙,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,214評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件聚凹,死亡現(xiàn)場離奇詭異割坠,居然都是意外死亡齐帚,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評論 2 382
  • 文/潘曉璐 我一進(jìn)店門彼哼,熙熙樓的掌柜王于貴愁眉苦臉地迎上來对妄,“玉大人,你說我怎么就攤上這事沪羔〖⒁粒” “怎么了?”我有些...
    開封第一講書人閱讀 152,543評論 0 341
  • 文/不壞的土叔 我叫張陵蔫饰,是天一觀的道長琅豆。 經(jīng)常有香客問我,道長篓吁,這世上最難降的妖魔是什么茫因? 我笑而不...
    開封第一講書人閱讀 55,221評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮杖剪,結(jié)果婚禮上冻押,老公的妹妹穿的比我還像新娘。我一直安慰自己盛嘿,他們只是感情好洛巢,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著次兆,像睡著了一般稿茉。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上芥炭,一...
    開封第一講書人閱讀 49,007評論 1 284
  • 那天漓库,我揣著相機(jī)與錄音,去河邊找鬼园蝠。 笑死渺蒿,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的彪薛。 我是一名探鬼主播茂装,決...
    沈念sama閱讀 38,313評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼善延!你這毒婦竟也來了训唱?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,956評論 0 259
  • 序言:老撾萬榮一對情侶失蹤挚冤,失蹤者是張志新(化名)和其女友劉穎况增,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體训挡,經(jīng)...
    沈念sama閱讀 43,441評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡澳骤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評論 2 323
  • 正文 我和宋清朗相戀三年歧强,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片为肮。...
    茶點(diǎn)故事閱讀 38,018評論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡摊册,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出颊艳,到底是詐尸還是另有隱情茅特,我是刑警寧澤,帶...
    沈念sama閱讀 33,685評論 4 322
  • 正文 年R本政府宣布棋枕,位于F島的核電站白修,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏重斑。R本人自食惡果不足惜兵睛,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望窥浪。 院中可真熱鬧祖很,春花似錦、人聲如沸漾脂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽骨稿。三九已至笨鸡,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間啊终,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評論 1 261
  • 我被黑心中介騙來泰國打工傲须, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蓝牲,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,467評論 2 352
  • 正文 我出身青樓泰讽,卻偏偏與公主長得像例衍,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子已卸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評論 2 345

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