win10下部署安装NGINX PHP MySQL
1. PHP
1.1下载安装包
下载地址:http://windows.php.net/download/
(建议下载非线程安全的,可避免与nginx连接过程中出现错误)
此处下载的是php7.3版本,将压缩包解压到D:\software下,修改文件夹名称为php73;
1.2配置
将php.ini-prodution复制一份,重命名为php.ini
最重要的打开:查找 extension_dir,将;extension_dir = "ext"改为extension_dir = “D:\software\php73\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,根据自身需要启用相关扩展,常用的还有bz2,curl,fileinfo,sockets等,要使用mysql,必须启用extension=mysqli或者extension=pdo_mysql
配置好后:
在cmd下,cd到PHP的安装环境,运行:
php-cgi.exe -b 127.0.0.1:9000
或者直接在安装目录下双击php-cgi.exe;
若出现错误:
“无法运行程序,因为缺失VCRUNTIME140.dll…”
原因是系统版本太低:
解决方法:
方法一:将电脑版本升高;
方法二:升级visual studio。
2nginx
2.1下载
地址:http://nginx.org/en/download.html
将压缩包解压到D:\software下,修改文件夹名称为nginx-1.16.1;
2.2配置
打开配置文件D:\software\nginx-1.16.1\conf\nginx.conf
做如下修改:
location / {
#root html;
root E:/web/php;
index index.html index.htm index.php;
}
E:/web/php是我的工作目录
去掉注释并修改:
location ~ \.php$ {
#root html;
root E:/web/php;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME /software/nginx-1.16.1/html$fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
#index index.html index.htm index.php;
}
3mysql
3.1下载
地址:http://www.mysql.com/downloads/
解压到相应文件夹
3.2配置
在mysql主目录下新建mysql配置文件,mysql.ini,将如下内容粘贴进去:
[mysql]
default-character-set=utf8
[mysqld]
port=3306
basedir=D:\\MYSQL\\mysql-5.7.27-winx64
datadir=D:\\MySQL\\mysql-5.7.27-winx64\\data
server_id=kfsj2016
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
在命令行CMD中使用命令安装:
进入MySQL目录下的bin文件夹下:
mysqld -install
提示:Service successfully installed,表示安装成功
初始化,输入
mysqld --initialize --console
命令,会生成一个初始root密码及在mysql安装目录生成数据库文件data目录,记录下来该密码
输入
net start mysql
启动mysql服务,
输入
mysql -u root -p
然后输入前面记录的初始密码登录mysql
修改root初始密码:写MySQL命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新的root密码'
;
完成后输入exit()
退出
4 RunHiddenConsole
这个工具是用于隐藏运行服务的窗口,很好用。如果每次开机手工进命令提示行启动nginx、php服务,关掉命令提示符窗口后相应服务就终止了,比较麻烦。
下载地址:https://www.bwg88.cc/RunHiddenConsole.rar,解压密码:bwg88.cc
解压到D:\software\nginx-1.16.1目录,
将以下内容保存为start.bat批处理文件,用管理员身份运行即可自动运行mysql、php、nginx:
@echo off
echo Starting mysql...
net start mysql
echo Starting nginx...
"D:/software/nginx-1.16.1/RunHiddenConsole.exe" "D:/software/nginx-1.16.1/nginx.exe" -p "D:/software/nginx-1.16.1"
echo Start nginx success
echo Starting PHP Server .......................
"D:/software/nginx-1.16.1/RunHiddenConsole.exe" "D:/software/php-73-nts/php-cgi.exe" -b 127.0.0.1:9000 -c "D:/software/php-73-nts/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
配置完成
可以写一个测试文件phpinfo.php ,内容为:
<?php phpinfo(); ?>保存到原来设置好的工作目录:E:/web/php
在地址栏输入localhost,即可访问到关于php 配置信息的网页,表示nginx成功部署php 。
参考博文:https://www.cnblogs.com/tckey/p/13128489.html