「Php/Symfony/Symfony2/インストール」の版間の差分
提供: 初心者エンジニアの簡易メモ
(ページの作成:「==symfonyインストーラーのDL== curl -LsS http://symfony.com/installer > symfony.phar sudo mv symfony.phar /usr/local/bin/symfony chmod a+x /usr/local/bin/symfon...」) |
(→vendor Call to a member function getServiceName() on null) |
||
(同じ利用者による、間の33版が非表示) | |||
行1: | 行1: | ||
+ | ==composer追加== | ||
+ | $ curl -s http://getcomposer.org/installer | php | ||
+ | $ sudo mv composer.phar /usr/local/bin/composer.phar | ||
+ | $ composer -V | ||
+ | Composer version 1.2.4 2016-12-06 22:00:51 | ||
+ | |||
==symfonyインストーラーのDL== | ==symfonyインストーラーのDL== | ||
curl -LsS http://symfony.com/installer > symfony.phar | curl -LsS http://symfony.com/installer > symfony.phar | ||
行5: | 行11: | ||
symfony --help | symfony --help | ||
− | == | + | ==symfony2.3のプロジェクトを作成== |
$ symfony new leaning-symfony2 2.3 | $ symfony new leaning-symfony2 2.3 | ||
Symfony 2.3.42 was successfully installed. Now you can: | Symfony 2.3.42 was successfully installed. Now you can: | ||
+ | |||
+ | ==symfony2.8のプロジェクトを作成== | ||
+ | $ symfony new leaning-symfony2_8 2.8 | ||
+ | Symfony 2.8.19 was successfully installed. Now you can: | ||
+ | |||
+ | ==composer実行== | ||
+ | composer.phar install | ||
+ | |||
+ | ==準備== | ||
+ | mkdir app/cache | ||
+ | simplexml_import_dom() must be available がでた場合 | ||
+ | (debian系の場合) sudo apt-get install php7.0-xml | ||
+ | the requested PHP extension mbstring is missing from your system. がでた場合 | ||
+ | (debian系の場合) sudo apt-get install php7.0-mbstring | ||
+ | the requested PHP extension soap is missing from your system. | ||
+ | (debian系の場合) sudo apt-get install php7.0-soap | ||
+ | Install PDO drivers (mandatory for Doctrine). | ||
+ | (debian系の場合) sudo apt-get install php7.0-pdo php7.0-mysql | ||
+ | Install and enable the intl extension (used for validators). | ||
+ | (debian系の場合) sudo apt-get install php7.0-intl | ||
+ | |||
+ | ==インストール確認== | ||
+ | php app/check.php | ||
+ | |||
+ | ==timezone修正== | ||
+ | $ php -r "phpinfo();" | grep php.ini | ||
+ | $ vi /etc/php5/cli/php.ini | ||
+ | date.timezone = Asia/Tokyo | ||
==設定ファイル== | ==設定ファイル== | ||
行28: | 行62: | ||
php app/console server:run localhost:8000 | php app/console server:run localhost:8000 | ||
localhost:8000をブラウザで開く | localhost:8000をブラウザで開く | ||
+ | |||
+ | ==バージョン確認方法== | ||
+ | $ app/console -V | ||
+ | Symfony version 2.3.42 - app/dev/debug | ||
+ | |||
+ | ==venderがない時== | ||
+ | php composer.phar install | ||
+ | |||
+ | ==webの下に.cssなどがない時== | ||
+ | $ app/console assets:install | ||
+ | $ tree web | ||
+ | web/bundles/ | ||
+ | ├── framework | ||
+ | │ ├── css | ||
+ | │ │ ├── body.css | ||
+ | │ │ ├── exception.css | ||
+ | │ │ └── structure.css | ||
+ | │ └── images | ||
+ | │ ├── blue_picto_less.gif | ||
+ | │ ├── blue_picto_more.gif | ||
+ | │ ├── grey_magnifier.png | ||
+ | │ └── logo_symfony.png | ||
+ | └── sensiodistribution | ||
+ | └── webconfigurator | ||
+ | ├── css | ||
+ | │ ├── configurator.css | ||
+ | │ └── install.css | ||
+ | └── images | ||
+ | ├── blue-arrow.png | ||
+ | ├── favicon.ico | ||
+ | └── notification.gif | ||
+ | |||
+ | ==cacheディレクトリ権限== | ||
+ | sudo chmod 777 -R app/cache/dev | ||
+ | sudo chmod 777 -R app/cache/prod | ||
+ | |||
+ | ==logディレクトリ権限== | ||
+ | sudo chmod 777 -R app/logs | ||
+ | |||
+ | ==cacheクリア== | ||
+ | 本番 | ||
+ | php app/console cache:clear --env=prod --no-debug | ||
+ | 開発 | ||
+ | php app/console cache:clear --env=dev --no-debug | ||
+ | |||
+ | ==bootstrap.php.cache再作成== | ||
+ | php ./vendor/sensio/distribution-bundle/Sensio/Bundle/DistributionBundle/Resources/bin/build_bootstrap.php | ||
+ | |||
+ | ==nginx== | ||
+ | [[Linux/nginx/php-symfony]] [ショートカット] | ||
+ | |||
+ | ==httpアクセスでのエラー== | ||
+ | You are not allowed to access this file. Checkエラーが起こる場合 | ||
+ | web/app_dev.phpの'127.0.0.1'を自分のipに変更 | ||
+ | |||
+ | ==nginxのlogに502の以下エラーが出る場合== | ||
+ | *1 upstream sent too big header while reading response header from upstream, client: | ||
+ | |||
+ | vi /etc/nginx/conf.d/hogehoge.confのhttp{}内に以下を追加 | ||
+ | fastcgi_intercept_errors on; | ||
+ | fastcgi_ignore_client_abort off; | ||
+ | fastcgi_connect_timeout 60; | ||
+ | fastcgi_send_timeout 180; | ||
+ | fastcgi_read_timeout 180; | ||
+ | fastcgi_buffer_size 256k; | ||
+ | fastcgi_buffers 4 256k; | ||
+ | fastcgi_busy_buffers_size 256k; | ||
+ | fastcgi_temp_file_write_size 256k; | ||
+ | |||
+ | 参考:http://www.geek.sc/archives/936 | ||
+ | |||
+ | ==cssが適用されないエラー== | ||
+ | php app/console assets:install --symlink | ||
+ | |||
+ | ==vendor Call to a member function getServiceName() on nullエラーのとき== | ||
+ | sudo php app/console cache:clear --env=dev --no-debug |
2019年4月5日 (金) 18:45時点における最新版
目次
- 1 composer追加
- 2 symfonyインストーラーのDL
- 3 symfony2.3のプロジェクトを作成
- 4 symfony2.8のプロジェクトを作成
- 5 composer実行
- 6 準備
- 7 インストール確認
- 8 timezone修正
- 9 設定ファイル
- 10 ビルトインサーバで起動
- 11 バージョン確認方法
- 12 venderがない時
- 13 webの下に.cssなどがない時
- 14 cacheディレクトリ権限
- 15 logディレクトリ権限
- 16 cacheクリア
- 17 bootstrap.php.cache再作成
- 18 nginx
- 19 httpアクセスでのエラー
- 20 nginxのlogに502の以下エラーが出る場合
- 21 cssが適用されないエラー
- 22 vendor Call to a member function getServiceName() on nullエラーのとき
composer追加
$ curl -s http://getcomposer.org/installer | php $ sudo mv composer.phar /usr/local/bin/composer.phar $ composer -V Composer version 1.2.4 2016-12-06 22:00:51
symfonyインストーラーのDL
curl -LsS http://symfony.com/installer > symfony.phar sudo mv symfony.phar /usr/local/bin/symfony chmod a+x /usr/local/bin/symfony symfony --help
symfony2.3のプロジェクトを作成
$ symfony new leaning-symfony2 2.3 Symfony 2.3.42 was successfully installed. Now you can:
symfony2.8のプロジェクトを作成
$ symfony new leaning-symfony2_8 2.8 Symfony 2.8.19 was successfully installed. Now you can:
composer実行
composer.phar install
準備
mkdir app/cache
simplexml_import_dom() must be available がでた場合
(debian系の場合) sudo apt-get install php7.0-xml
the requested PHP extension mbstring is missing from your system. がでた場合
(debian系の場合) sudo apt-get install php7.0-mbstring
the requested PHP extension soap is missing from your system.
(debian系の場合) sudo apt-get install php7.0-soap
Install PDO drivers (mandatory for Doctrine).
(debian系の場合) sudo apt-get install php7.0-pdo php7.0-mysql
Install and enable the intl extension (used for validators).
(debian系の場合) sudo apt-get install php7.0-intl
インストール確認
php app/check.php
timezone修正
$ php -r "phpinfo();" | grep php.ini $ vi /etc/php5/cli/php.ini date.timezone = Asia/Tokyo
設定ファイル
$ vi app/config/parameters.yml parameters: database_driver: pdo_mysql database_host: 127.0.0.1 database_port: null database_name: symfony database_user: root database_password: null mailer_transport: smtp mailer_host: 127.0.0.1 mailer_user: null mailer_password: null locale: en secret: e1d43f3fa7a03ac8dc47196fd9ffb4xxxxxxxxxx
ビルトインサーバで起動
php app/console server:run localhost:8000
localhost:8000をブラウザで開く
バージョン確認方法
$ app/console -V Symfony version 2.3.42 - app/dev/debug
venderがない時
php composer.phar install
webの下に.cssなどがない時
$ app/console assets:install $ tree web web/bundles/ ├── framework │ ├── css │ │ ├── body.css │ │ ├── exception.css │ │ └── structure.css │ └── images │ ├── blue_picto_less.gif │ ├── blue_picto_more.gif │ ├── grey_magnifier.png │ └── logo_symfony.png └── sensiodistribution └── webconfigurator ├── css │ ├── configurator.css │ └── install.css └── images ├── blue-arrow.png ├── favicon.ico └── notification.gif
cacheディレクトリ権限
sudo chmod 777 -R app/cache/dev sudo chmod 777 -R app/cache/prod
logディレクトリ権限
sudo chmod 777 -R app/logs
cacheクリア
本番
php app/console cache:clear --env=prod --no-debug
開発
php app/console cache:clear --env=dev --no-debug
bootstrap.php.cache再作成
php ./vendor/sensio/distribution-bundle/Sensio/Bundle/DistributionBundle/Resources/bin/build_bootstrap.php
nginx
Linux/nginx/php-symfony [ショートカット]
httpアクセスでのエラー
You are not allowed to access this file. Checkエラーが起こる場合 web/app_dev.phpの'127.0.0.1'を自分のipに変更
nginxのlogに502の以下エラーが出る場合
*1 upstream sent too big header while reading response header from upstream, client:
vi /etc/nginx/conf.d/hogehoge.confのhttp{}内に以下を追加 fastcgi_intercept_errors on; fastcgi_ignore_client_abort off; fastcgi_connect_timeout 60; fastcgi_send_timeout 180; fastcgi_read_timeout 180; fastcgi_buffer_size 256k; fastcgi_buffers 4 256k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k;
参考:http://www.geek.sc/archives/936
cssが適用されないエラー
php app/console assets:install --symlink
vendor Call to a member function getServiceName() on nullエラーのとき
sudo php app/console cache:clear --env=dev --no-debug