脚本宝典收集整理的这篇文章主要介绍了windows Nginx+PHP7+Mysql独立环境部署,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
Nginx安装
- 下载 Nginx1.13解压版下载地址:http://nginx.org/download/nginx-1.13.7.zip
- 解压到D:server目录下并重命名为nignx,完整目录为:D:servernginx
- 进入D:servernginx 双击执行nginx.exe(如执行成功,在进程中会有2个nginx进程,如失败请检查80端口是否被占用)
- 浏览器访问 localhost 即可访问默认目录
PHP安装
- 下载 php源码包 php-7.1.12-nts-Win32-VC14-x86.zip
- 解压到D:server目录下并重命名为php,完整目录为: D:serverphp
- 修改 D:serverphpphp.ini-development 文件名为 php.ini 至此,PHP与Nginx环境已搭建完毕!
- 为了把PHP在后台进程一直挂起,我们需要一个windows守护进程工具 RunHiddenConsole 下载到本地后完整目录为 D:serverRunHiddenConsole.exe ,工具的作用可以把任务放到后台执行,不用一直在前端开着一堆DOS窗口了,这里把Nginx与PHP启动停止脚本写在一个批处理脚本中。
-
Nginx和PHP的批处理脚本
- 开启
@echo off
set PHP_fcGI_MAX_REQUESTS=1000
echo Starting PHP FastCGI...
D:serverRunHiddenConsole "D:serverphpPHP-CGI.exe" -b 127.0.0.1:9000 -c "D:serverphpphp.ini"
echo Starting nginx...
D:serverRunHiddenConsole "D:servernginxnginx.exe" -p "D:servernginx"
- 停止
@echo off
echo Stopping nginx...
taskkill /F /IM nginx.exe > nul
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
exit
- 重启
@echo off
echo Stopping nginx...
taskkill /F /IM nginx.exe > nul
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
set PHP_FCGI_MAX_REQUESTS=1000
echo Starting PHP FastCGI...
D:serverRunHiddenConsole "D:serverphpphp-cgi.exe" -b 127.0.0.1:9000 -c "D:serverphpphp.ini"
echo Starting nginx...
D:serverRunHiddenConsole "D:servernginxnginx.exe" -p "D:servernginx"
- 修改Nginx配置文件 将请求信息转发给 php 去进行处理
server {
listen 80;
server_name 127.0.0.1;
location / {
root D:/WWW;
autoindex on;
index index.htML index.htm index.php;
autoindex_exact_size off;
autoindex_localtime on;
}
location ~ .php$ {
root D:/WWW;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_SCRIPT_NAME;
include fastcgi_params;
}
}
MySQL安装配置
- 下载MySQL ZIP版本 Windwos 64bit下载地址 Windwos 32bit下载地址
- 解压到D:server目录下并重命名为mysql,完整目录为 D:servermysql
- 新建一个配置文件my.ini放到mysql根目录,完整路径为 D:servermysqlmy.ini
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#skip-grant-tables
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:servermysql
# 设置mysql数据库的数据的存放目录
datadir=D:servermysqldata
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# sql_mode
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SubSTITUTION
右键我的电脑 -> 属性 -> 高级系统设置 -> 环境变量 ->从系统变量中找到Path
添加mysql目录下的bin所在路径到Path的末端(不要覆盖Path原值,利用一个;号与上一个path路径断开):
- 以管理员身份运行cmd命令行
-
输入命令
- 安装:
mysqld -install
- 初始化:
mysqld --initialize
- 启动服务:
net start mysql
- 进入mysql并初始化密码:
mysql
update mysql.user set authentication_string=password('root') where user='root';
#退出mysql
exit
- 修改Mysql配置文件 #skip-grant-tables 去掉#号,重新启动Mysql服务
net stop mysql
net start mysql
- 再次登录Mysql
mysql -u root -p
#输入设置的密码
- 登录成功,设置新密码
SET PASSWORD = PASSWORD('your_new_password');
- 到此,所有的配置已完成,PS: skip-grant-tables参数的作用。 顾名思义,就是在启动mysql时不启动grant-tables,授权表。有什么用呢?当然是忘记管理员密码后有用。
以上是脚本宝典为你收集整理的windows Nginx+PHP7+Mysql独立环境部署全部内容,希望文章能够帮你解决windows Nginx+PHP7+Mysql独立环境部署所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。