一、安装PHP

下载:https://windows.php.net/download

我下载的是此时的最新版8.2.3

Windows搭建本地PHP8环境,配Nginx

下载后 解压目录 放到C:/tool下面目录重命名为PHP 目录自己定 我这个tool目录是个人习惯 你可以放到主流的C:\Program Files下也可以放到D盘E盘任何地方都可以

里面的php.ini-development 重命名为php.ini

打开php.ini编辑

找到 ;extension_dir = “ext” 打开注释改为 extension_dir = "C:\tool\PHP\ext" 就是PHP的安装目录中的ext位置
找到: ;date.timezone = 打开注释改为 date.timezone =Asia/Shanghai

找到一排排extension的地方 把需要的扩展去掉注释 比如我初始化需要的是这些

extension=curl
extension=fileinfo
extension=openssl
extension=pdo_mysql
extension=sockets
extension=zip

其他的都无所谓,实际开发中需要哪些扩展再来打开也可以

在PHP目录中创建目录session_temp 目录目录目录!
php.ini中找到session.save_path 改为 session.save_path = "C:\tool\PHP\session_temp"

在PHP目录中创建目录upload_temp 目录目录目录!
php.ini中找到upload_tmp_dir 改为 upload_tmp_dir ="C:\tool\PHP\upload_temp"

找到upload_max_filesize 改为 upload_max_filesize = 20M 允许上传文件最大值 看心情
找到post_max_size 改为 post_max_size = 30M 允许接收的post最大值 看心情 不要比上传小

保存

把C:\tool\PHP加入环境变量path中

打开命令行

php-cgi.exe -b 127.0.0.1:9000

二、安装Nginx

下载:http://nginx.org/en/download.html

我下载的是此时的最新稳定版1.22.1

Windows搭建本地PHP8环境,配Nginx

下载后 解压目录 放到C:/tool下面目录重命名为nginx 目录自己定 我这个tool目录是个人习惯 你可以放到主流的C:\Program Files下也可以放到D盘E盘任何地方都可以

config目录中nginx.conf文件,里面主要配置是http代码块下面的server代码块 每个server代码块代表一个域名转发

把里面的server代码块删掉 换成如下代码:

    server {
        listen       80;
        server_name  web.test.www;
        root   E:/WWW/test;
        location / {
                index  index.html index.htm index.php;
            }
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }

意思就是监听80端口的web.test.www域名请求,代码目录是E:\WWW\test下,如果是php文件就使用127.0.0.1:9000的php解释器去执行,这个web.test.www域名我们一会配置,之所以以www结尾是为了和正常域名区分开

注意了,指向目录中的斜杠要反着写,把\换成/ 就是这一行:root E:/WWW/test;

保存

C:\tool\nginx目录中打开命令行 启动nginx

start nginx.exe 启动
nginx.exe -s stop 结束
nginx.exe -s reload 重启

三、配置本地虚拟域名

找到C:\Windows\System32\drivers\etc下面的hosts文件 编辑器打开

在里面找个位置加入一行:

127.0.0.1 web.test.www

意思就是只要浏览器访问web.test.www这个域名,就拦住请求走本机,不走外网

四、测试

在E\WWW\test目录下新建一个info.php 写两行代码:

<?php
phpinfo();

保存

浏览器访问:http://web.test.www/info.php

Windows搭建本地PHP8环境,配Nginx

发表回复