zoukankan      html  css  js  c++  java
  • window下手动搭建 PHP+Nginx+Mysql(转)

    首先还是下载
    nginx:  http://nginx.org/en/download.html
    php  :  http://windows.php.net/download/
    mysql:  http://dev.mysql.com/downloads/

    nginx 选择zip的压缩包,如果你下了gz的压缩包你会发现你找不到一个能执行的东西,gz对应的linux系统的版本,需要编译后才能安装的

    对路径要求比较严格的只有nginx,因为这东西最开始就是为了linux下部署用的

    mysql这个数据库比较简易,随便下载一个exe的就可以下一步下一步的安装了,这里我用的是很久以前下的一个版本 mysql-noinstall-5.1.44-win32.zip
    对于这个版本,仅仅需要解压缩到硬盘里,然后进入bin目录,如我放在c盘下
    D:mysqlin>mysqld -install 执行了 mysqld -install后他就会自动添加服务并且下次启动的时候也能自动开启3306端口的mysql服务
    window默认添加服务后不会自动启动所以需要
    D:mysqlin>net start mysql 将服务开启
    后面需要做的是给mysql的root一个密码用来登录
    D:mysqlin>mysql -u root -p
    Enter password: ******

    php的安装也是比较简单的,下载、解压缩
    我为了方便管理都放到了d盘的server目录中 D:serverphp 这里有php.ini
    太多关于php.ini的修改就不提了主要是将里面的
    extension_dir = "./ext/" 这个参数修改了,否则你会发现很多dll即使在 ini文件中将分号去掉也是不起作用的,主要就是 ext路径没有被识别到的原因
    通常情况下启动了php后会有一个黑窗口,为了让php能在后台运行我使用了RunHiddenConsole.exe 这个文件
    新建一个 bat文件和RunHiddenConsole.exe在同一个文件夹中

    Bat代码

    1. @echo off
    2. echo Starting PHP FastCGI...
    3. RunHiddenConsole.exe D:serverphpphp-cgi.exe -b 127.0.0.1:9000 -c D:serverphpphp.ini
    复制代码

    nginx
    在win下需要注意的是,nginx必须在全英文的路径下才能启动,对于路径中有中文的情况下是无法启动的。
    这里我把nginx放到了D:server ginx
    需要修改的配置文件是nginx目录下的conf文件夹中的配置
    nginx.conf 这个文件是启动的主要配置文件,我不建议对这个文件进行大的改动
    在最后一个大括号前加入
    include vhost.conf;
    使用include方式加载我们需要定制的启动

    Vhost.conf代码

    1. server {
    2.         listen       80;
    3.         server_name  localhost;

    4.         #charset koi8-r;
    5.         #=====文字编码

    6.         #access_log  logs/host.access.log  main;

    7.         location / {
    8.             #root   html;  #这个是默认使用的路径,也就是nginx目录中的文件夹
    9.             root D:serverwww;  #我指向到了其他目录
    10.             #是否禁止列出目录
    11.             autoindex on;

    12.         #Nginx目录自动加斜线:
    13.         if (-d $request_filename){
    14.             rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;
    15.         }
    16.             index  index.html index.htm index.php;
    17.         }

    18.         #error_page  404              /404.html;

    19.         # redirect server error pages to the static page /50x.html
    20.         #
    21.         error_page   500 502 503 504  /50x.html;
    22.         location = /50x.html {
    23.             root html;
    24.         }

    25.         location ~ .php$ {
    26.             root         d:serverwww;   #对于php文件的解析 要和上面的root同级否则会有问题
    27.             fastcgi_pass   127.0.0.1:9000;
    28.             fastcgi_index index.php;
    29.             fastcgi_param SCRIPT_FILENAME d:serverwww$fastcgi_script_name;
    30.             include        fastcgi_params;
    31.         }
    32. }
    复制代码

    备注:nginx.conf 中关于 80 的server需要注释掉

    关于nginx的启动:nginx没有常驻的窗口显示,当你双击打开了nginx.exe后服务器便启动了。在任务管理器中可以看到两个nginx的进程
    关闭的方式只能通过win的命令方式进行关闭。

    这里我把同事关闭nginx和php的命令也都写出来了 保存为bat就可以了

    Cmd代码

    1. @echo off
    2. echo Stopping nginx...
    3. taskkill /F /IM nginx.exe >nul
    4. echo Stopping PHP FastCGI...
    5. taskkill /F /IM php-cgi.exe >nul
    6. exit
    复制代码
  • 相关阅读:
    excel表格的jar包
    mac和jar的关系
    BAT批处理文件入门-笔记
    没看完_perl的find模块很全面的讲解!!
    perl怎么拷贝一个文件到另一个文件夹中或者怎么拷贝文件夹到另一个文件夹
    perl 中用到的-*的具体解释,方便查看
    perl语言的笔记--啥是mkpath
    剑指哦佛_我的第一篇博客,哦耶
    ajax创建万能的XmlHttpRequest对象
    动态实例化窗体
  • 原文地址:https://www.cnblogs.com/xingmeng/p/3259206.html
Copyright © 2011-2022 走看看