账户中心 退出系统
开发文档 资讯·分享 技术交流 会员登录
phpGrace GSCMS 公众号系统
目录 · 站点

框架目录结构

|_ 应用开发根目录
    |_ appConfig/ 配置文件目录
    |_ appController/ 控制器目录
    |_ appData/ 动态数据保存目录
    |_ appLanguage/ 语言包目录
    |_ appModel/ 模型文件目录
    |_ appRoute/ 路由文件目录
    |_ appView/ 视图文件目录
    |_ appWidget/ 视图小部件目录
    |_ custom/ 自定义类文件目录
    |_ graceFrame/ 框架核心目录
    |_ website/ 某个具体网站的根目录,可以使用命令新建站点
        |_ 分组目录/ 非必须,使用命令创建
        |_ static/ 静态资源目录
            |_ js、css、图片等
        |_ index.php 入口文件
        |_ .htaccess
        |_ nginx.htaccess
    |_ vendor/ composer 相关目录
    |_ composer.json composer 配置文件
    |_ grace 命令行工具
    |_ .gitignore git 忽略设置文件

站点分割建议

一个完整的应用通常分为 : pc 端 + H5 端( 前端布局采用响应式,一个站点实现 )、后台管理、api 接口等,那么我们建议您划分为3个站点。
如 : 您的域名为 phpgrace.com, 那么可以划分3个域名 :

www.phpgrace.com 用于实现 pc 端 + H5 端
admin.phpgrace.com 用来实现后台管理系统
api.phpgrace.com 用来实现 api 接口

整个应用的目录结构类似

|_ 开发根目录
    |_ graceFrame/ 框架核心目录
    |_ www.phpgrace.com/ PC + H5
    |_ api.phpgrace.com/ api 接口
    |_ admin.phpgrace.com/ 后台管理系统
    |_ 其他目录

以上站点目录请使用命令行创建,会自动初始化站点运行所需的目录及文件。

创建站点

使用 php grace cw 新的站点名称 命令来创建一个新的站点,命令格式 : 

cd /应用开发根目录 
php grace cw 站点目录名称

如创建上面提及的3个站点 : 

cd /应用开发根目录 
php grace cw www.phpgrace.com
php grace cw api.phpgrace.com
php grace cw admin.phpgrace.com

创建好站点后您就可以设置 apache 或者 nginx 虚拟主机,然后运行这些站点,虚拟主机部分配置示例 :

apache

<VirtualHost *:80>
    DocumentRoot "D:/phpgrace/www.phpgrace.com"
    ServerName www.laravel1.com
    ServerAlias 
    <Directory "D:/phpgrace/www.phpgrace.com">
        Options FollowSymLinks ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
        Require all granted
        DirectoryIndex index.php index.html error/index.html
    </Directory>
</VirtualHost>


nginx

server {
        listen        80;
        server_name  www.phpgrace.com;
        DocumentRoot "D:/phpgrace/www.phpgrace.com"
        location / {
            index index.php index.html error/index.html;
            include D:/mywebs/laravelDemo/nginx.htaccess;
            autoindex  off;
        }
        location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
}

集成环境注意事项

小皮面板

当设置好站点时,系统会重新生成空的伪静态文件,造成站点原有伪静态文件丢失,请使用命令快速恢复伪静态文件:

# 命令格式
grace cht 站点目录名称
# 如 
grace cht www.phpgrace.com

nignx 伪静态文件变化时,需要重启服务生效 ~


宝塔面板默认开启 防跨站攻击(open_basedir) 项,如果开启此项请修改相关的配置文件 : 

宝塔面板

宝塔面板默认开启 防跨站攻击(open_basedir) 项,如果开启此项请修改相关的配置文件 : 
/站点根目录/.user.ini
将整个项目根目录添加到 open_basedir 的属性,如 :

open_basedir="D:/mywebs/phpgrace/;D:/mywebs/phpgrace/localhost/;"

修改后重启站点即可~