win10下部署安装NGINX PHP MySQL

it2023-09-29  66

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

最新回复(0)