编程教育资源分享平台

网站首页 > 后端开发 正文

win10下配置NGINX+PHP+MYSQL

luoriw 2024-02-01 14:21:47 后端开发 13 ℃ 0 评论


PHP


1. 官方下载地址

https://windows.php.net/downloads/releases/php-7.4.7-nts-Win32-vc15-x64.zip,根据自己需要下载安装 解压到D盘,得到路径:D:\wnmp\php

2. 配置

将php.ini-prodution重命名为php.ini(记得备份,以便有问题的时候还原),打开 查找 extension_dir,将;extension_dir = "ext"改为extension_dir = "D:\php\ext" 查找 cgi.fix_pathinfo,将;cgi.fix_pathinfo=1改为cgi.fix_pathinfo=1,也就是去掉前面的分号 查找 ;date.timezone = ,先去前面的分号再改为 date.timezone = Asia/Shanghai 查找 enable_dl = Off 改为 enable_dl = On 查找 ;cgi.force_redirect = 1 先去前面的分号再改为 cgi.force_redirect = 0 查找 ;fastcgi.impersonate = 1 去掉前面的分号 查找 ;cgi.rfc2616_headers = 0 先去前面的分号再改为 cgi.rfc2616_headers = 1 接下来启用扩展 查找extension,根据自身需要启用相关扩展,要使用mysql,必须启用extension=mysqli或者extension=pdo_mysql(去掉前面的分号就是启用)。 常用的还有bz2,curl,fileinfo,sockets等,没有启用的话运行一些PHP程序会出现相关错误提示。

NGINX


1. 官方下载地址

http://nginx.org/download/nginx-1.19.0.zip,根据自己需要下载安装

2. 解压到D盘,得到路径:D:\wnmp\nginx3. 打开D:\wnmp\nginx\conf\nginx.conf (NGINX的配置文件) 找到location /,并按注释说明作相应修改:

location / {
				root html;#这是默认网站目录,可以修改为E:\wwwroot,就是将网站根目录改到E盘的wwwroot文件夹
				index index.html index.htm; #默认索引首页,加入index.php default.php
}

完成后代码:

location / {
			root E:\wwwroot;
				index index.html index.htm default.html default.htm index.php default.php;
}

查找location ~ .php$,去掉整段代码前面的注释号:#,将相应内容修改为:

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

保存。

mysql


1. 下载地址

https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-winx64.zip,根据自己需要下载安装 解压到D盘,得到路径:D:\wnmp\mysql 在D:\wnmp\mysql目录下新建mysql配置文件,mysql.ini,将如下内容粘贴进去:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\mysql
# 设置mysql数据库的数据的存放目录
datadir=D:\mysql\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
innodb_file_per_table = 1
#等待超时时间
wait_timeout=172800
#交互式连接超时时间
interactive-timeout=172800

2. 安装,开始菜单–>系统–>命令提示符–>以管理员身份运行,如图所示,依次输入命令: mysqld -install命令执行后,提示:Service successfully installed,表示安装成功。 我在安装的时候报错,提示提示我找不到msvcr120.dll,需要重新安装服务,在人工解答中搜索dll修复,也修复了,但是仍然没有解决。 出现这个问题最主要的原因就是本地c++ 库组件有问题。最后我找到了解决方案,就是下载一个 DirectX修复工具 , 然后使用该软件进行修复即可。如果在修复的过程中,发现你本地已经安装过c++组件, 把本地的卸载掉,再重试下即可 传送门:传送门:DirectX修复工具 下载地址 链接:https://pan.baidu.com/s/18mRM95NVQw_FH8GlCkWvDw, 提取码:afde

3. 初始化,同样在命令提示符窗口,输入mysqld –initialize –console命令初始化,会生成一个初始root密码及在mysql安装目录生成数据库文件data目录,记录下来该密码:

4. 启动mysql服务,输入net start mysql命令5. 修改root初始密码 输入 mysql -uroot -p,然后输入前面记录的初始密码登录mysql 登录成功后即进入了mysql的命令行模式,输入命令: ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword' ; 命令执行成功后exit退出。mysql安装配置完成。

6. 下载RunHiddenConsole.rar 这个工具是用于隐藏运行服务的窗口,很好用。如果每次开机手工进命令提示行启动nginx、php服务,关掉命令提示符窗口后相应服务就终止了,比较麻烦。 链接:https://pan.baidu.com/s/1hDnA36iUOF2EZlNmrkFDtw,提取码:afde 解压到D:\wnmp\common目录,将以下内容保存为start.bat批处理文件,用管理员身份运行即可自动运行mysql、php、nginx:

@echo off
echo Starting mysql...
net start mysql
echo Starting nginx...
"D:/wnmp/common/RunHiddenConsole.exe" "D:/wnmp/nginx/nginx.exe" -p
"D:/wnmp/nginx"
echo Start nginx success
echo Starting PHP Server .......................
"D:/wnmp/common/RunHiddenConsole.exe" "D:\wnmp\php\php-cgi.exe" -b 12
7.0.0.1:9000 -c "D:\wnmp\php\php.ini"
echo START PHP SERVER SUCCESS
pause
Exit

将以下内容保存为stop.bat批处理文件,以管理员身份运行,可自动停止mysql、php、nginx服务:

@echo off echo Stopping nginx… 
taskkill /fi "imagename eq nginx.exe" /f> nul
echo Stop nginx success
echo Stopping PHP FastCGI...
taskkill /fi "imagename eq php-cgi.exe" /f> nul
echo Stop php-cgi success
echo Stopping mysql...
net stop mysql
pause
exit

其他问题

1. nginx+php环境访问显示access denied 解决方案 将php.ini中cgi.fix_pathinfo从0改为1。

2. windows 上nginx提示no input file specified 这个解决的迷迷糊糊的,最后应该是修改nginx.conf中的root 的路径解决的,如果遇到这个问题大家可以自己试一试。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表
最新留言