基础准备

不懂php开发环境搭建的可以去网上搜索下。相信学习这个框架的童鞋们也都不是菜鸟级的了。 我习惯开发中直接用实际要发布的域名来做测试,这样将来发布后会省去一些不必要的麻烦。 假如你的程序将来要发布到域名www.test.com上,这里简单介绍一下方法:

1、修改本机host ,把你要测试开发的网络地址指向本地:

用文本编辑器打开:C:\Windows\System32\drivers\etc\host 文件

最后一行添加:

127.0.0.1 www.test.com

这样从你本机的浏览器请求网址www.test.com 都会被解析到你的本机ip : 127.0.0.1上。

2、打开apache的 Virtual Hosts配置文件 建立添加虚拟网站文件映射。

<VirtualHost *:80>
    ServerAdmin mqqkobe@163.com
    DocumentRoot "D:/php/test/pub"
    ServerName www.test.com
    ErrorLog "logs/dummy-host.somenet.com-error.log"
    CustomLog "logs/dummy-host.somenet.com-access.log" common
<Directory "D:/php/test/pub">
       Options FollowSymLinks
       AllowOverride All
       Order allow,deny
       Allow from all 
</Directory>
</VirtualHost>

3、根据上面的配置可以看出,需要把工程test的开发目录拷贝到D:/php下

4、默认情况下把框架的参考系统源码目录也拷贝到D:/php下

开发工具

这里推荐eclipse的php开发工具(PDT),笔者是从java开始接触程序开发的所以推荐eclipse 下载地址:http://eclipse.org/pdt/downloads/ 一般下载all in one就好。

本人本地配的域名是框架网站的主域名:

127.0.0.1 www.yyuc.net

特别说明:

1、因为示例中配置的域名是www.yyuc.net,所以下文所提到 www.yyuc.net的地方你都需要自换成自己的域名。

2、为了让你更了解YY框架的原理和构成,我们先介绍几个简单的示例再介绍开发管理中心的使用,虽然开发管理中心会帮助我们省去一些敲代码的工作量,但是作为初学者,还是建议你一步一步的往下看。

Nginx的配置:

linux下我们更常用nginx来代替apache完成页面请求转发的工作,下面是在一个简单的nginx配置示例:

user  www www;

worker_processes 1;

error_log  /home/wwwlogs/nginx_error.log  crit;

pid        /usr/local/nginx/logs/nginx.pid;

#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 51200;

events
    {
        use epoll;
        worker_connections 51200;
    }

http
    {
        include       mime.types;
        default_type  application/octet-stream;

        server_names_hash_bucket_size 128;
        client_header_buffer_size 32k;
        large_client_header_buffers 4 32k;
        client_max_body_size 50m;

        sendfile on;
        tcp_nopush     on;

        keepalive_timeout 60;

        tcp_nodelay on;

        fastcgi_connect_timeout 300;
        fastcgi_send_timeout 300;
        fastcgi_read_timeout 300;
        fastcgi_buffer_size 64k;
        fastcgi_buffers 4 64k;
        fastcgi_busy_buffers_size 128k;
        fastcgi_temp_file_write_size 256k;

        gzip on;
        gzip_min_length  1k;
        gzip_buffers     4 16k;
        gzip_http_version 1.0;
        gzip_comp_level 2;
        gzip_types       text/plain application/x-javascript text/css application/xml;
        gzip_vary on;

        #limit_zone  crawler  $binary_remote_addr  10m;

        #log format
        log_format  access  '$remote_addr - $remote_user [$time_local] "$request" '
             '$status $body_bytes_sent "$http_referer" '
             '"$http_user_agent" $http_x_forwarded_for';
server
    {
        listen       80;
        server_name www.yyuc.net;
        index index.html index.htm index.php;
        root  /home/test/pub;

        location / {
            if (!-e $request_filename) {
            rewrite ^/(.*)$ /index.php last;
            }
        }

        location ~ .*\.(php|php5)?$
            {
                try_files $uri =404;
                fastcgi_pass  unix:/tmp/php-cgi.sock;
                fastcgi_index index.php;
                include fcgi.conf;
            }

        location /status {
            stub_status on;
            access_log   off;
        }

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
            {
                expires      30d;
            }

        location ~ .*\.(js|css)?$
            {
                expires      12h;
            }

        access_log  /home/wwwlogs/access.log  access;
    }
}