专栏首页smywindows本地配置php(yii)+nginx+fastcgi

windows本地配置php(yii)+nginx+fastcgi

一. 配置nginx支持php

官网下载nginx。

nginx.conf配置做如下更改:

    # yii框架
    server {
        charset utf-8;
        client_max_body_size 128M;

        listen 80; ## listen for ipv4
        #listen [::]:80 default_server ipv6only=on; ## listen for ipv6

        server_name www.yii.com;
        root        G:/demo/yii/basic/web;
        index       index.php;

        access_log  G:/demo/yii/basic/log/access.log;
        error_log   G:/demo/yii/basic/log/error.log debug;

        location / {
            # Redirect everything that isn't a real file to index.php
            try_files $uri $uri/ /index.php$is_args$args;
        }

        # uncomment to avoid processing of calls to non-existing static files by Yii
        #location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
        #    try_files $uri =404;
        #}
        #error_page 404 /404.html;

        # deny accessing php files for the /assets directory
        location ~ ^/assets/.*\.php$ {
            deny all;
        }
        
        location ~ \.php$ {
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_pass 127.0.0.1:9000;
            #fastcgi_pass unix:/var/run/php5-fpm.sock;
            try_files $uri =404;
        }

        location ~* /\. {
            deny all;
        }
    }

 配置好后重启nginx

 (注意,这里配置了server_name为www.yii.com。需要同时配置host文件,把www.yii.com映射到127.0.0.1)

二. php安装yii

下载php包 配置环境变量

yii安装参考官网:https://www.yiiframework.com/doc/guide/2.0/zh-cn/start-installation

安装好后,启动yii服务测试是否正常:

php yii serve

修改php.ini支持fastCGI:

搜索“extension_dir”,找到: e;xtension_dir = "ext" 先去前面的分号再改为 extension_dir = "D:\php\ext"

搜索“date.timezone”,找到:;date.timezone = 先去前面的分号再改为 date.timezone = Asia/Shanghai

搜索“enable_dl”,找到:enable_dl = Off 改为 enable_dl = On

搜索“cgi.force_redirect” ;cgi.force_redirect = 1 先去前面的分号再改为 cgi.force_redirect = 0

搜索“fastcgi.impersonate”,找到: ;fastcgi.impersonate = 1 去掉前面的分号

搜索“cgi.rfc2616_headers”,找到:;cgi.rfc2616_headers = 0 先去前面的分号再改为 cgi.rfc2616_headers = 1

搜索“php_mysql”,找到:”extension=php_mysql.dll和extension=php_mysqli.dll  去掉前面的“;”extension=php_mysql.dll和extension=php_mysqli.dll   (支持MYSQL数据库)

三. 启动fastCGI服务

什么是fastCGI?它有什么用?可以参考另一篇文章:php中fastcgi和php-fpm是什么东西

打开cmd命令:

C:\Users\Administrator>D:/php/php-cgi.exe -b 127.0.0.1:9000 -c D:/php/php.ini

启动后,看似没反应,实际已在任务管理器增加了php-cgi进程:

保持cmd命令行不退出,访问www.yii.com,发现可以正常访问:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • vscode跳转到函数定义处

    php还需要安装php7, 到官网https://windows.php.net/download#php-7.2

    smy
  • docker内安装php缺少的扩展mysql.so和mysqli.so

    安装成功,退出docker,重启docker  docker restart php

    smy
  • PHP会话(Session)实现用户登陆功能

    对比起 Cookie,Session 是存储在服务器端的会话,相对安全,并且不像 Cookie 那样有存储长度限制,本文简单介绍 Session 的使用。 由...

    smy
  • 怎么让WordPress首页显示文章摘要(主题Twenty Twelve)

    子勰
  • 使用WCF进行跨平台开发之二(IIS托管WCF服务并使用php平台调用)1.系统必备2.在IIS中托管WCF服务3.使用PHP调用托管在IIS中的WCF服务

    上一篇中,使用控制台托管了WCF服务,但是如果想从PHP和java平台调用,必须将其托管到IIS中(并不是必须的,还是有其他的方式的 比如windows azu...

    小白哥哥
  • php

    htmllentitles()/unhtml()/urlencode()/urldecode/

    radaren
  • centos下安装phpredis扩展

    Marser
  • Win8.1系统下搭建IIS8.5+PHP5.5.4运行环境教程

    这篇文章主要介绍了Win8.1系统下配置IIS8.5+PHP5.5.4运行环境教程,需要的朋友可以参考下

    习惯说一说
  • wordpress页面异常导致本地路径泄漏

    之前用360检测到如下错误,类似的出现过好几次了,暂且记录下来,路径用的其他地方的,但问题及解决办法是一样的。

    汐楓
  • 赛博地球杯初赛第三名,ChaMd5安全团队的writeup

    WEB 大量设备报表不见了(签道题) 访问index.php会被跳转到index.php?id=1 而且还有写送分题,尝试很多后,发现是考验爆破,上burpsu...

    ChaMd5安全团队

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动