美文网首页
YAF框架学习记录

YAF框架学习记录

作者: _Henry_ | 来源:发表于2017-04-17 16:33 被阅读0次

    现状

    毕业后就来到W公司工作,随着接触的业务越多,接触到代码风格越来越多,然后有时候可能是工作比较忙、业务比较多的时候,由此无可厚非会有一些代码质量不是很高。一个业务拉的时间越长,参与编写的人员越多,那么这部分代码就会越来越臃肿,代码的风格也是,给后期的维护,以及新业务的扩展带来一定的麻烦。于是心里边总用一种想重构的冲动。

    切入点

    现在W公司使用的框架是yaf框架,这也是在别的框架上迁移过来的,所以代码量累积的比较多,那么在不是很熟悉yaf框架的基础上,对庞大的代码进行重构,这样的风险是非常大的。

    基于以上情况,我考虑从后台代码切入,现在后台的代码也是非常的臃肿,对我非常有利的一点是后台没有往yaf上迁移,可能大家觉得工作量比较大,而且带来不了非常好的效果吧,所以是能用就行。

    这样从后台代码切入,既能丰富现在不是很强大的后台功能,也能快速的了解yaf,为以后的重构前端代码做准备。

    代码构建

    git clone https://github.com/laruence/yaf.git
    php yaf_cg Sample

    服务器配置

    nginx 配置

    server {
        listen  80;
        root /data1/www/htdocs/sample/;
        server_name  sample.weibo.com i.sample.weibo.com;
    
        access_log  /data1/www/logs/sample-access_log  main;
        error_log  /data1/www/logs/sample-error_log;
    
        if (!-e $request_filename) {
            rewrite ^/(.*)  /public/index.php/$1 last;
        }
    
        location  / {
            set $script_uri "";
            if ( $request_uri ~* "([^?]*)?" ) {
                set $script_uri $1;
            }
            fastcgi_pass   127.0.0.1:9890;
            fastcgi_param  SCRIPT_URL         $script_uri;
            fastcgi_param  REQUEST_ID           $request_uid;
            include fastcgi/comm_fastcgi_params;
        }
    }   
    

    php-fpm 配置

    [sample]
    user = www
    group = www
    listen = 127.0.0.1:9890
    listen.allowed_clients = 127.0.0.1
    pm = dynamic
    pm.max_children = 128
    pm.start_servers = 10
    pm.min_spare_servers = 5
    pm.max_spare_servers = 20
    pm.max_requests = 1500
    request_terminate_timeout = 30
    catch_workers_output = no
    security.limit_extensions = ""
    
    php_admin_value[include_path] = ".:/usr/local/sinasrv2/lib/php"
    

    入口配置

    原入口:http://sample.weibo.com/index.php
    将入口定向到 public/index
    增加action层,减少controller赘余

    composer 库导入

    1.生成github token : https://github.com/settings/tokens/new?scopes=repo&description=Composer+on+localhost.localdomain+2015-05-14+1600
    2.添加 composer.json 文件

    {
      "require": {
        "monolog/monolog": "1.0.*",
        "twbs/bootstrap": "3.3.*"
      }
    }
    

    3.添加vendor文件夹,使用composer install 安装
    4.安裝完成後, 程式內容加入 require 'vendor/autoload.php';就可以直接使用

    CSS、JS等静态文件配置

        location ~* .(jpg|gif|png|js|css)$ {
             root /data1/www/htdocs/sample/;
             if (-f $request_filename) {
                expires max;
                break;
             }
         } 
    

    相关文章

      网友评论

          本文标题:YAF框架学习记录

          本文链接:https://www.haomeiwen.com/subject/pvitzttx.html