neomede/symfony-skeleton

Symfony Skeleton

dev-master 2014-08-26 09:31 UTC

This package is not auto-updated.

Last update: 2024-09-28 16:20:32 UTC


README

带有 Sonata 的 Symfony 骨架

西班牙语/Español:在 README.es.md 中查看西班牙语文档

安装

首先,您需要安装 composer 链接

  1. Symfony Skeleton

    composer create-project neomede/symfony-skeleton <yourProyect/> dev-symfony
  2. Symfony Skeleton + Sonata Admin Bundle

    composer create-project neomede/symfony-skeleton <yourProyect/> dev-sonata-admin
  3. Symfony Skeleton + Sonata Admin Bundle + Sonata User Bundle

    composer create-project neomede/symfony-skeleton <yourProyect/> dev-sonata-user
  4. Symfony Skeleton + Sonata Admin Bundle + Sonata User Bundle + Sonata Media Bundle

    composer create-project neomede/symfony-skeleton <yourProyect/> dev-sonata-media
  5. Symfony Skeleton + Sonata Admin Bundle + Sonata User Bundle + Sonata Media Bundle + FOS Rest Bundle + JMS Serializer Bundle

    composer create-project neomede/symfony-skeleton <tuProyecto/> dev-fos-rest

配置

运行以下命令以确保您的系统满足所有技术要求

php app/check.php

您需要访问以下 URL 以检查 Web 服务器中的所有技术要求并配置 symfony 项目

localhost\YourProjectRoute\web\config.php

配置您的项目后,应删除此文件。

错误

缓存/日志文件夹权限

app/cacheapp/logs 必须由 Web 服务器和命令行用户均可写入。

您需要确保 Web 服务器具有正确的权限。如果遇到问题,可以运行以下命令

  1. 在支持 chmod +a 的系统上使用 ACL
$ rm -rf app/cache/*
$ rm -rf app/logs/*

$ HTTPDUSER=`ps aux | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\  -f1`
$ sudo chmod +a "$HTTPDUSER allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
$ sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
  1. 在不支持 chmod +a 的系统上使用 ACL
$ HTTPDUSER=`ps aux | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\  -f1`
$ sudo setfacl -Rn -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX app/cache app/logs
$ sudo setfacl -dRn -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX app/cache app/logs

Sonata Media Bundle

如果它们尚未创建,您需要添加特定文件夹以允许用户上传

mkdir web/uploads
mkdir web/uploads/media
chmod -R 0777 web/uploads

要提供上传文件的服务,您可以创建一个虚拟主机

nginx

  1. 编辑 /etc/hosts 并添加新的主机名(static.vhost.dev

    127.0.0.1       localhost       static.vhost.dev
  2. sites-avaliable 中添加新的站点(statics

    server {
            listen 8080 ;
    
            server_name static.vhost.dev;
    
            location / {
                root your_project_directory/web/uploads;
            }
    }
  3. 在 sites-enabled 中创建到新文件的新的符号链接

  4. app/config/config.yml 中编辑以下行

    cdn:
        server:
            path: http://static.vhost.dev:8080/media

创建数据库

要创建数据库,我们使用以下命令

php app/console doctrine:database:create

php app/console doctrine:schema:update --force

创建超级用户

php app/console fos:user:create admin --super-admin