PHP学习日记 Windows配置PHP+Nginx+自动化脚本
Windows配置PHP+Nginx+自动化脚本
- 安装与配置 PHP
下载PHP:传送门

选择合适的版本下载 尽量选Thread Safe
配置PHP:
解压后在文件夹中找到php.ini-development文件复制一份并改名为php.ini
给PHP指定可加载扩展模块的位置。
在php.ini中找到extension_dir项目,取消注释并赋值为”./ext”:


- 然后让PHP和Nginx联动。
在php.ini 中找到cgi.fix_pathinfo项目,取消注释


- Nginx的安装与配置
- Nginx下载:传送门

选择一个合适的版本下载(图中红框位置为最新版)。
下载后选择合适的位置安装
点击 nginx.exe**启动**nginx
打开cmd,输入:
:: tasklist显示进程,/fi筛选器,""中为映像名称等于nginx.exe
tasklist /fi "imagename eq nginx.exe"
nginx正常启动的情况下:

这时在浏览器中输入localhost就能看到nginx的欢迎页面:

接下来配置Nginx
在Nginx的目录下的conf目录下打开nginx.conf.
做以下修改:
#user nobody;
worker_processes 1;
# 打开log
error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
# 打开log
access_log logs/access.log;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 80;
server_name localhost;
#charset koi8-r;
# 打开log
access_log logs/host.access.log;
location / {
# 设置网站的根目录(类似Apache的www目录)
# 这个路径自己定义就行,下面的是我自己的路径
root D:/work/www;
# 把index.php添加到默认首页,就是输入/时自动打开/index.php
index index.html index.htm index.php;
}
# 打开404页面(可以不动)
error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
# 配置FastCGI,PHP 脚本请求全部转发到 FastCGI处理
location ~ \.php$ {
#
root D:/work/www;
# 设置监听端口
fastcgi_pass 127.0.0.1:9000;
# 设置nginx的默认首页文件(上面已经设置过了,可以删除)
fastcgi_index index.php;
# 设置脚本文件请求的路径
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
# 引入fastcgi的配置文件
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
deny all;
}
}
}
之后**启动**php-cgi和Nginx
先双击nginx.exe启动Nginx
然后打开cmd输入如下,启动php-cgi
:: 打开cgi -b指定端口 -c指定php.ini的位置 D:/PHP/php-cgi.exe -b 127.0.0.1:9000 -c D:/work/php/php.ini
这时我们可以测试一下启动是否成功。
在网站根目录下新建一个php文件:(例如我的是:phpinfo.php)
<?php phpinfo();
然后打开浏览器进入网址localhost/phpinfo.php
如果成功会进入如下页面:

环境就成功搭建完了。
- 配置脚本
- 下载RunHiddenConsole.exe(隐藏cmd窗口)
- 编辑批处理文件
start.bat
@ECHO off SET php_home=D:/PHP/ SET nginx_home=D:/Nginx/ ECHO Starting PHP FastCGI... RunHiddenConsole %php_home%php-cgi.exe -b 127.0.0.1:9000 -c %php_home%php.ini ECHO Starting nginx... RunHiddenConsole %nginx_home%nginx.exe -p %nginx_home
stop.bat
@ECHO off ECHO Stopping nginx... TASKKILL /F /IM nginx.exe ECHO Stopping PHP FastCGI... TASKKILL /F /IM php-cgi.exe EXIT
RunHiddenConsole.exe 后续补充
PHP学习日记 Windows配置PHP+Nginx+自动化脚本的更多相关文章
- Linux学习之十七-配置Linux简单的脚本文件自启动
配置Linux简单的脚本文件自启动 在Linux中使用shell脚本解决一些问题会比单独执行多条命令要有效率,脚本文件规定命名以.sh结尾,最基本的规则就是其内容是命令,想要脚本文件开机自启动,就需要 ...
- NodeJS学习日记--环境配置及项目初始化
在node.js官网下载nodejs安装包 安装完成后打开控制台,输入 npm -version 如果正确显示npm版本则安装成功. 创建项目之前先要安装以下全局扩展模块 npm install -g ...
- Hadoop实战4:MapR分布式集群的安装配置及shell自动化脚本
MapR的分布式集群安装过程还是很艰难的,远远没有计划中的简单.本人总结安装配置,由于集群有很多机器,手动每台配置是很累的,编写了一个自动化配置脚本,下面以脚本为主线叙述(脚本并不完善,后续继续完善中 ...
- 【转】Nginx 学习笔记(十一)nginx下安装配置naxsi waf防火墙(附完整编译、配置)
原文地址:http://f2ex.cn/nginx-installed-configuration-naxsi-waf/ Naxsi 是第三方 nginx 模块 ,它和 Modsecurity 都是开 ...
- windows配置nginx实现负载均衡集群
windows配置nginx实现负载均衡集群2014-08-20 09:44:40 来源:www.abcde.cn 评论:0 点击:617 网上大部分关于nginx负载均衡集群的教程都是lin ...
- windows server,nginx安装,配置,运行nodeJS后端的web项目的实现,以及错误分析及解决方法
一.安装nginx 下载windows版nginx (http://nginx.org/download/nginx-1.12.2.zip),之后解压到需要放置的位置(C:\nginx) 二.将Ngi ...
- windows配置nginx实现负载均衡集群 -请求分流
windows配置nginx实现负载均衡集群 一.windows上安装nginx 1.下载nginx的windows版本http://nginx.org/en/download.html 2.把压缩文 ...
- Windows平台下nginx跨域配置
1)下载地址: http://nginx.org 2)启动 解压至d:\nginx,运行nginx.exe(即nginx -c conf\nginx.conf),默认使用80端口,日志见文件夹D:\n ...
- 深度学习python的配置(Windows)
Windows下深度学习python的配置 1.安装包的下载 (1)anaconda (2)pycharm 2.安装教程 (1)anaconda a.降版本 b.换源 (2)pycharm a.修改h ...
随机推荐
- 搭建SVN+APACHE环境
项目需求 根据开发需求,建立svn环境,同时建立source.bd分支,source分支所有人都能访问,bd分支管理员kazihuo可访问.同时,在此基础上构建apache,以便于相关人员能通过浏览器 ...
- NGINX+TOMCAT实现反向代理
环境说明 NGINX: 192.168.10.10 TOMCAT: 192.168.10.11 NGINX部分 [root@nginx ~]# wget http://nginx.org/downlo ...
- python3使用stmplib发送邮件
代码如下: import smtplib from email.mime.text import MIMEText from email.header import Header from email ...
- Java入门系列(五)JVM内存模型
概述 根据<Java 虚拟机规范>中的说法,Java 虚拟机的内存结构可以分为公有和私有两部分. 公有指的是所有线程都共享的部分,指的是 Java 堆.方法区.常量池. 私有指的是每个线程 ...
- 20155306 2016-2017-2 《Java程序设计》第七周学习总结
20155306 2016-2017-2 <Java程序设计>第七周学习总结 教材学习内容总结 第十三章 时间与日期 三种时间: 格林威治标准时间(GMT)的正午是太阳抵达天空最高点之时, ...
- 20145234黄斐《Java程序设计》第五周
教材学习内容总结 第八章部分 - 异常处理 语法与继承架构 使用try...catch 首先要明确一点:Java中所有错误都会打包为对象 JVM会尝试执行try区块中的程序代码,如果发生错误,执行程序 ...
- JavaScript进阶--慕课网学习笔记
JAVASCRIPT—进阶篇 给变量取个名字(变量命名) 变量名字可以任意取,只不过取名字要遵循一些规则: 1.必须以字母.下划线或美元符号开头,后面可以跟字 ...
- linux nginx大量TIME_WAIT的解决办法--转
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' TIME_WAIT 8535 CLOSE_WAIT 5 FIN ...
- verilog中wire与reg类型的区别
每次写verilog代码时都会考虑把一个变量是设置为wire类型还是reg类型,因此把网上找到的一些关于这方面的资料整理了一下,方便以后查找. wire表示直通,即只要输入有变化,输出马上无条件地反映 ...
- 005_MAC下的VMware fushion快捷键(折中)
由于MAC和VMware Fushion虚拟机之间有一些快捷键的映射,所以Windows虚拟机就找了一个折中的方案.现总结MAC下的win常用快捷键==> <1>最小化窗口(Alt ...