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 ...
随机推荐
- Python中的变量引用对象需注意的几点
Python中的变量引用对象需注意的几点 分类:Python (55) (0) 普通引用: Python中,变量的作用仅仅是一个标识,只有赋值后才被创建,它可以引用任何类型的对象,而且在引用之前必须 ...
- ActiveMQ队列消息过期时间设置和自动清除解决方案
版本 apache-activemq-5.15.3 1.消息过期设置 参数详情 1)message过期则客户端不能接收 2)ttlCeiling:表示过期时间上限(程序写的过期时间不能超过此时间,超过 ...
- ZeroMQ API(四) 套接字
1.创建一个套接字 1.1 zmq_socket(3) 1.1.1 名称 zmq_socket - 创建ZMQ套接字 1.1.2 概要 void * zmq_socket(void * context ...
- stl第二级空间配置器详解(1)
SGI STL考虑到小型内存区块的碎片问题,设计了双层级配置器,第一级配置直接使用malloc()和free():第二级配置器则视情况采用不同的策略,当配置区大于128bytes时,直接调用第一级配置 ...
- 浅谈ASP.net处理XML数据
XML是一种可扩展的标记语言,比之之前谈到的html有着很大的灵活性,虽然它只是与HTML仅有一个字母只差,但两者有很大的区别. XML也是标记语言,所以它每个标签必须要闭合,而HTML偶尔忘了闭合也 ...
- 开启session
在index.php中开启 session_start();
- C++利用cin输入时检测回车的方法
今天做TJU的OJ ,其中一道题是先读入一个字符串,再读入一个整数,循环往复,直到字符串是空,也就是说回车键结束循环. 但是cin对空格和回车都不敏感,都不影响继续读入数据,所以需要一种新的方式检测回 ...
- JS合并单元格
在Web中经常需要合并单元格,例如对于下面一个表格: <!DOCTYPE html> <html> <head> <meta charset="UT ...
- Linux压缩打包方法连载之三:bzip2, bzcat 命令
Linux压缩打包方法有多种,本文集中讲解了bzip2, bzcat 命令的使用.案例说明,例如# 与 gzip 同样的,都是在计算压缩比的参数,-9 最佳,-1 最快. AD: 我们遇见Linux压 ...
- [问题解决]同时显示多个Notification时PendingIntent的Intent被覆盖?
情况是这样的,使用NotificationManager触发多个Notification: private Notification genreNotification(Context context ...