從零搭建WNMP環境

三大件安裝

Nginx安裝

  • 下載地址:http://nginx.org/en/download.html
  • 選擇穩定版本:在這裏插入圖片描述
  • 下載文件名稱:nginx-1.16.1.zip
  • 解壓壓縮包,並進入目錄,比如D:\wnmp\nginx
  • 運行nginx.exe
  • 打開瀏覽器,地址欄輸入:localhost,回車
    在這裏插入圖片描述
    出現該頁面,則安裝成功。

PHP安裝

  • 下載地址:https://windows.php.net/download#php-7.4
  • 選擇非線程安全版本
    在這裏插入圖片描述
  • 下載文件:php-7.4.1-nts-Win32-vc15-x64.zip
  • 解壓壓縮包,並進入目錄,比如:D:\wnmp\php
  • 打開cmd,運行命令php -v在這裏插入圖片描述
    出現該頁面,則安裝成功。

MySQL安裝

三大件配置

Nginx配置

  • 備份conf目錄(比如D:\wnmp\nginx\conf)下nginx.conf文件
  • 修改nginx.conf文件,部分註釋內容未貼出來
#user  nobody;
worker_processes  1;

http {

    server {
        listen       80;
        server_name  localhost;
        location / {
            root   D:/wnmp/www/localhost;
            index  index.html index.htm index.php;
        }

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
           root           D:/wnmp/www/localhost;
           fastcgi_pass   127.0.0.1:9000;
           fastcgi_index  index.php;
           fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
           include        fastcgi_params;
        }
    }
}

PHP配置

  • 修改D:\wnmp\php目錄下php.ini-development爲php.ini,
  • 僅展示部分配置,其餘根據項目需要自行修改配置
[PHP]

; 1
extension_dir = "D:\wnmp\php\ext"
; 2
enable_dl = On
; 3
cgi.force_redirect = 0
; 4
cgi.fix_pathinfo=1
; 5
fastcgi.impersonate = 1
; 6
cgi.rfc2616_headers = 1

; 7
extension=php_mysqli.dll

; 8
date.timezone = Asia/Shanghai

MySQL配置

  • MySQL安裝目錄D:\wnmp\mysql-8.0.18-winx64修改my.ini文件(如無,則手動添加)
[mysqld]
# set basedir to your installation path
basedir=D:\\wnmp\\mysql-8.0.18-winx64
# set datadir to the location of your data directory
datadir=D:\\wnmp\\mysql-8.0.18-winx64\\data

三大件聯調

PHP連接Nginx

  • 創建目錄D:\wnmp\www\localhost
  • 新建文件phpinfo.php,內容如下
<?php
  phpinfo();
  • 開啓PHP進程(注意:cmd需要以管理員權限運行
d:\wnmp\php>php-cgi.exe -b 127.0.0.1:9000 -c php.ini
  • 開啓Nginx
d:\wnmp\nginx>start nginx.exe

PHP連接MySQL

  • 開啓MySQL
d:\wnmp>net start mysql
  • 編寫腳本test_mysql.php,內容如下:
<?php
$servername = "localhost";
$username = "root";
$password = "phpphp";
 
// 創建連接
$conn = new mysqli($servername, $username, $password);
 
// 檢測連接
if ($conn->connect_error) {
    die("連接失敗: " . $conn->connect_error);
} 
echo "連接成功";

  • 打開瀏覽器,輸入,查看頁面展示
    在這裏插入圖片描述
    至此,則表示PHP和MySQL連接成功。

常用腳本和命令

下面兩個腳本** start_nginx.bat stop_nginx.bat**用於快捷啓動、停止Nginx&PHP服務。

start_nginx.bat

@echo off
 
REM set PHP_FCGI_CHILDREN=5
set PHP_FCGI_MAX_REQUESTS=1000
  
echo Starting PHP FastCGI...
D:\wnmp\nginx\RunHiddenConsole "D:\wnmp\php\php-cgi.exe" -b 127.0.0.1:9000 -c "D:\wnmp\php\php.ini"
echo Starting nginx...
D:\wnmp\nginx\RunHiddenConsole "D:/wnmp/nginx/nginx.exe" -p "D:/wnmp/nginx/"

stop_nginx.bat

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

常用命令

  • 查看進程
tasklist /fi "imagename eq nginx.exe"
tasklist /fi "imagename eq php-cgi.exe"
netstat -ano | findstr "3306"
  • Nginx重載配置
nginx -s reload
  • Nginx優雅關閉
nginx -s quit
  • Nginx幫助命令
nginx -h
  • 關閉MySQL服務
net stop mysql
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章