本次环境:NGINX、PHP、MySQL、Redis
注意:所有的下载请注意,选择对应的版本,以下的apache仅提供下载地址,并不在本次教程当中!!!
本次教程的下载:NGINX PHP MySQL Redis
以下是各个环境的下载列表地址,请根据自己的需求进行下载,如果不懂可以选择以上默认的下载地址!
目前官方并不支持windows版本,社区的Windows版本Redis下载地址:https://github.com/tporadowski/redis/releases
目前官方并不支持windows版本,社区的Windows版本apache下载地址:https://www.apachelounge.com/download/
nginx下载地址,请选择支持Windows版本:https://nginx.org/en/download.html
php下载地址,请选择支持Windows版本:https://windows.php.net/downloads/releases/archives/
MySQL下载地址,请选择支持Windows版本:https://downloads.mysql.com/archives/community/
一、配置NGINX
我的web文件主目录的路径:C:/Users/Administrator/Desktop/www
请在下面的配置目录路径选择自己的。
打开NGINX的配置文件:nginx-1.27.0\conf\nginx.conf
1.方便配置多端口方式(推荐)
在配置文件添加(需要在当前目录新建vhosts文件夹):include vhosts/*.conf;
同时需要将server配置都注释了。
在新建的 vhosts文件夹 中,新建文件,一般命名规则“服务名称_端口”:1_80.conf
打开配置文件,注意以上的文件名仅是规范,可以任意定义,关键看里面的配置:
解析请看图:
如果继续第二个端口再运行,请根据上面的添加,只需要修改NGINX运行的端口和web的文件路径就可以了。
1_80.conf 配置文件:
server { listen 80; server_name 1; root "C:/Users/Administrator/Desktop/www"; location / { index index.php index.html error/index.html; error_page 400 /error/400.html; error_page 403 /error/403.html; error_page 404 /error/404.html; error_page 500 /error/500.html; error_page 501 /error/501.html; error_page 502 /error/502.html; error_page 503 /error/503.html; error_page 504 /error/504.html; error_page 505 /error/505.html; error_page 506 /error/506.html; error_page 507 /error/507.html; error_page 509 /error/509.html; error_page 510 /error/510.html; include C:/Users/Administrator/Desktop/www/nginx.htaccess; autoindex off; } location ~ \.php(.*)$ { fastcgi_pass 127.0.0.1:9001; fastcgi_index index.php; fastcgi_split_path_info ^((?U).+\.php)(/?.+)$; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fastcgi_params; } }
2.直接主配置方式
注意:只选择一种方式!!!!!
只需要将默认的配置给取消就可以了,注意更换自己的web的主路径,我这里使用第一种方式就不细写了。
配置完成后,直接点击运行就可以了:nginx.exe
3.启动NGINX
推荐使用cmd的方式去启动,报错的时候会直接提示,注意在cmd下启动,需要先进入Nginx所在的目录。
在Windows中,在不同的盘符中cd进入目录并不会进所在的目录
以下是nginx在系统盘的,如C盘是你的操作系统所在的盘符,你的nginx放在C盘。
cd C:\Users\Administrator\Desktop\集成环境\nginx-1.27.0 C:\Users\Administrator\Desktop\集成环境\nginx-1.27.0\nginx.exe
以下是nginx不在系统盘的情况,如果你放在桌面等系统所在的盘符仅需要按上面操作即可。
如文件位置是在 D:\集成环境\nginx-1.27.0
cd D:\集成环境\nginx-1.27.0 D: D:\集成环境\nginx-1.27.0\nginx.exe
如果自己能保证配置文件无问题,请直接启动nginx.exe程序,该程序是没有界面的,因此关闭只能在任务管理器中找到他将它进行关闭操作!
关闭只能在任务管理器找到他进行关闭。
PHP配置
1.将文件复制一份并重新命名为:php.ini
2.配置php开启Redis扩展,不需要到Redis环境请忽略!
扩展下载地址,请选择对应的版本:https://pecl.php.net/package/redis/
如果直接按本教程默认下载地址:PHP扩展Redis下载
然后放到PHP当前的ext文件夹下
在PHP的配置文件 php.ini,在最后一行新增一行,添加:
[Redis] extension=redis
3. php.ini相关配置
开启默认的扩展引入文件,取消extension_dir的注释。
开启MySQL的扩展,取消mysqli注释。
与NGINX交互:cgi.fix_pathinfo=1
4. 启动php-cgi与NGINX配置
这里可以理解为启动 php-fpm
注意:我上面NGINX配置的与php交互的地址是9001,请根据自己的实际修改
示列:php-cgi程序 -b ip地址:端口 -c php.ini配置文件地址
C:\Users\Administrator\Desktop\集成环境\php-7.3.7-nts-Win32-VC15-x64\php-cgi.exe -b 127.0.0.1:9001 -c C:\Users\Administrator\Desktop\集成环境\php-7.3.7-nts-Win32-VC15-x64\php.ini
MySQL配置
注意:由于目前的MySQL在中文路径下会出错(也可能是环境编码),这里就将MySQL移动到桌面
1. 新建my.ini文件
在MySQL的目录下建立文件
basedir 是当前MySQL的路径,注意自己的路径。
datadir 是当前MySQL的数据,记得新建data文件夹。
port 是端口号。
配置内容大概如下
[mysqld] port=3306 basedir=C:/Users/Administrator/Desktop/mysql-5.7.26-winx64/ datadir=C:/Users/Administrator/Desktop/mysql-5.7.26-winx64/data/ max_connections=200 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [client] port=3306 default-character-set=utf8 [mysql] default-character-set=utf8
2. 初始化数据库
打开新的cmd,在MySQL的bin目录下mysqld 程序进行初始化
示列: bin目录下mysqld程序 --initialize-insecure --user=用户名 --basedir=MySQL路径 --datadir=MySQL数据路径
C:\Users\Administrator\Desktop\集成环境\mysql-5.7.26-winx64\bin\mysqld.exe --initialize-insecure --user=root --basedir=C:/Users/Administrator/Desktop/mysql-5.7.26-winx64/ --datadir=C:/Users/Administrator/Desktop/mysql-5.7.26-winx64/data/
注意:–initialize-insecure选项将生成一个没有密码的root用户,需要修改密码
3. 启动MySQL
启动mysqld服务,在MySQL目录下的bin目录启动mysqld服务。注意根据自己的路径来修改。
C:\Users\Administrator\Desktop\mysql-5.7.26-winx64\bin\mysqld.exe --console
4. 创建数据库和改密码
新建cmd窗口,进入数据库,在MySQL目录下的bin目录mysql程序。
C:\Users\Administrator\Desktop\mysql-5.7.26-winx64\bin\mysql.exe -u root
更新密码root,我这里设置为admin,请根据自己的修改。
USE mysql; SET PASSWORD FOR 'root'@'localhost' = PASSWORD('admin'); FLUSH PRIVILEGES;
创建数据库,这里创建为webname数据库
CREATE DATABASE webname;
之后的数据库连接使用webname数据库,账号是root,密码是:admin
NGINX最好以cmd的方式去启动,MySQL默认是mysqld服务,php是php-cgi服务。
这里就结束了,web配置方面自行配置,以下是Redis的。
Redis配置
使用默认端口和空密码,直接启动
在开发环境下使用redis.windows.conf,当cmd窗口关闭它也会关闭,方便管理
C:\Users\Administrator\Desktop\集成环境\Redis-x64-5.0.14.1\redis-server.exe C:\Users\Administrator\Desktop\集成环境\Redis-x64-5.0.14.1\redis.windows.conf
总结
注意:修改php配置和nginx都需要重启nginx和php-cgi。
个人非常不推荐使用Windows的环境来,但很多时候为了方便和管理,以及以下特殊情况的,只能使用Windows环境。
这里推荐使用集成环境: PhpStudy
出这个教程的目的,是为了自己在使用集成环境的情况下懂得更多的知识,能在集成环境替换一部分的环境,因为环境的搭建,是一个很头大的问题。当你完成一次完整的过程以及了解缘由,第二次会非常的快速就能完成。同时你也可以使用docker,但是这个在Windows中,特别是服务器环境,一方面硬件资源,另外就是兼容问题。