neomede / symfony-skeleton
Symfony Skeleton
Requires
- php: >=5.3.3
- doctrine/doctrine-bundle: ~1.2
- doctrine/orm: ~2.2,>=2.2.3
- friendsofsymfony/rest-bundle: 1.4.*@dev
- friendsofsymfony/user-bundle: v1.3.3
- incenteev/composer-parameter-handler: ~2.0
- jms/serializer-bundle: 0.13.*@dev
- knplabs/knp-menu: 1.1.*@dev
- sensio/distribution-bundle: ~2.3
- sensio/framework-extra-bundle: ~3.0
- sensio/generator-bundle: ~2.3
- sonata-project/admin-bundle: 2.3.*@dev
- sonata-project/core-bundle: 2.2.*@dev
- sonata-project/doctrine-orm-admin-bundle: 2.2.7
- sonata-project/easy-extends-bundle: 2.1.*@dev
- sonata-project/jquery-bundle: 1.10.*@dev
- sonata-project/media-bundle: 2.2.*@dev
- sonata-project/user-bundle: 2.2.4
- symfony/assetic-bundle: ~2.3
- symfony/monolog-bundle: ~2.4
- symfony/swiftmailer-bundle: ~2.3
- symfony/symfony: ~2.4
- twig/extensions: ~1.0
This package is not auto-updated.
Last update: 2024-09-28 16:20:32 UTC
README
带有 Sonata 的 Symfony 骨架
西班牙语/Español:在 README.es.md 中查看西班牙语文档
安装
首先,您需要安装 composer 链接
-
Symfony Skeleton
composer create-project neomede/symfony-skeleton <yourProyect/> dev-symfony
-
Symfony Skeleton + Sonata Admin Bundle
composer create-project neomede/symfony-skeleton <yourProyect/> dev-sonata-admin
-
Symfony Skeleton + Sonata Admin Bundle + Sonata User Bundle
composer create-project neomede/symfony-skeleton <yourProyect/> dev-sonata-user
-
Symfony Skeleton + Sonata Admin Bundle + Sonata User Bundle + Sonata Media Bundle
composer create-project neomede/symfony-skeleton <yourProyect/> dev-sonata-media
-
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/cache 和 app/logs 必须由 Web 服务器和命令行用户均可写入。
您需要确保 Web 服务器具有正确的权限。如果遇到问题,可以运行以下命令
- 在支持 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
- 在不支持 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
-
编辑 /etc/hosts 并添加新的主机名(static.vhost.dev)
127.0.0.1 localhost static.vhost.dev
-
在 sites-avaliable 中添加新的站点(statics)
server { listen 8080 ; server_name static.vhost.dev; location / { root your_project_directory/web/uploads; } } -
在 sites-enabled 中创建到新文件的新的符号链接
-
在 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