Bagaimana untuk menggunakan program Symfony
Menggunakan Symfony boleh menjadi tugas yang kompleks dan pelbagai, bergantung pada persediaan dan keperluan aplikasi anda. Artikel ini bukan panduan langkah demi langkah, tetapi lebih kepada senarai keperluan dan pengesyoran biasa apabila digunakan. . selesai sebelum ini);
Kosongkan (sebagai pilihan, panaskan) cache anda.
Proses penggunaan juga termasuk tugasan lain, seperti:- Tag versi tertentu kod sebagai keluaran dalam pustaka versi anda Buat kawasan pementasan untuk membina tetapan "luar talian" anda yang dikemas kini ; Jalankan sebarang ujian yang tersedia untuk memastikan kestabilan kod dan/atau pelayan; Alih keluar sebarang fail yang tidak diperlukan daripada direktori
- untuk memastikan persekitaran pengeluaran bersih;
Memcached
atau- Redis
- ). Cara untuk menggunakan program Symfony
- ¶
web/
Terdapat beberapa cara untuk menggunakan program Symfony. Mulakan dengan beberapa strategi penggunaan asas dan pergi dari sana.- Pemindahan Fail Asas ¶Cara paling asas untuk mengatur atur cara adalah dengan menyalin fail secara manual melalui FTP/SCP (atau kaedah yang serupa). Kelemahannya ialah, sebagai contoh, semasa proses naik taraf, anda tidak mempunyai kawalan ke atas sistem. Pendekatan ini juga memerlukan anda melakukan beberapa langkah manual selepas pemindahan fail (lihat Tugas selepas penempatan biasa
Gunakan kawalan versi ¶
Jika anda menggunakan kawalan versi (seperti Git atau SVN), anda boleh terus menjadikan pemasangan langsung sebagai salinan repositori anda. Apabila anda bersedia untuk menaik taraf, ia semudah menarik kemas kini terkini daripada sistem kawalan versi anda.Ini menjadikan pengemaskinian fail anda lebih mudah
, tetapi anda masih perlu mempertimbangkan untuk melaksanakan langkah tambahan secara manual (lihatTugas selepas penempatan biasa).
Gunakan perkhidmatan platform¶
Jarang digunakanPengguna yang mempunyai keperluan berkaitan, sila rujuk teks asal laman web rasmi Symfony. Selain itu, platform awan moden, seperti Microsoft Azure, boleh menyokong Symfony3+ dalam satu langkah.
Langkah penempatan khas sangat berbeza antara penyedia perkhidmatan yang berbeza, jadi cari perkhidmatan pilihan anda daripada artikel berasingan ini:
- Menggunakan Microsoft Azure Website Cloud
- Menggunakan untuk fortrabbit
- Menggunakan Platform.sh
Menggunakan skrip binaan dan alatan lain
¶🎜Terdapat beberapa alatan yang boleh membantu meringankan kesakitan penggunaan. Sebahagian daripadanya hampir dibuat khusus untuk keperluan Symfony: 🎜- Capistrano Berfungsi dengan Symfony plugin
- Capistrano ialah automasi pelayan jauh dan alat penggunaan yang ditulis dalam Ruby. Pemalam Symfony ialah pemalam yang memudahkan tugas berkaitan Symfony, diilhamkan oleh Capifony (ia hanya berfungsi dengan Capistrano 2)
- sf2debpkg
- membantu anda membina pakej asli Symfony anda.
- Magallanes
- Alat penggunaan "seperti Capistrano" ini dibina dalam PHP dan memudahkan pembangun PHP untuk melanjutkan keperluan mereka.
- Fabrik
- Pustaka kelas berasaskan Python ini menyediakan suite asas untuk "melaksanakan baris arahan setempat atau jauh serta memuat naik serta memuat turun fail".
- Deployer
- Ini adalah satu lagi Capistrano yang ditulis semula daripada PHP asli, dengan beberapa ciri yang disediakan khusus untuk Symfony.
- Himpunan
- Terdapat beberapa himpunan dengan keupayaan penggunaan tambahan yang boleh digunakan terus dalam konsol Symfony anda.
- Skrip Asas
- Anda sudah tentu boleh menggunakan baris arahan, Ant atau mana-mana alat binaan lain untuk menskrip penggunaan projek anda. . Penuhi keperluan:
1
$ php bin/symfony_requirements
1 | $ composer install --no-dev --optimize-autoloader |
通过构建一个 "class map" 类映射,--optimize-autoloader
旗标大幅改进了Composer的自动加载性能。--no-dev
旗标可确保开发环境的包不被安装到生产环境。
如果在这一步你得到 "class not found" 错误,你可能需要在执行前述命令之前先运行 export SYMFONY_ENV=prod
以便 post-install-cmd
脚本运行在 prod
1
$ php bin/console cache:clear --env=prod --no-debug
Bendera --optimize-autoloader
telah dipertingkatkan dengan hebat dengan membina peta kelas "peta kelas" Prestasi pemuatan auto komposer. Bendera --no-dev
memastikan pakej pembangunan tidak dipasang ke dalam pengeluaran. 🎜🎜🎜
Jika pada langkah ini anda mendapat ralat "class not found", anda Anda mungkin perlu menjalankan export SYMFONY_ENV=prod
sebelum melaksanakan perintah sebelumnya supaya skrip post-install-cmd
berjalan dalam prod
persekitaran. 🎜🎜🎜🎜D) Kosongkan cache Symfony 🎜¶🎜🎜🎜 Pastikan anda mengosongkan (dan memanaskan) cache Symfony anda. 🎜🎜🎜🎜🎜🎜🎜🎜rrreee🎜🎜🎜🎜rrreee🎜🎜🎜🎜🎜🎜🎜🎜E) Gunakan sumber Assetic keluarkan aset: 🎜🎜🎜🎜🎜🎜 🎜🎜rrreee🎜🎜🎜🎜rrreee🎜🎜🎜🎜🎜
F) Kandungan lain! Run Database Migration
- clear APC Cacherun
- Proses diuruskan)
- Add/Edit Cron Tasks
assets:install
(已经在composer install
Publish Assets Sumber ke Cdn ... - Program Life Cycle: Continuous penyepaduan, jaminan kualiti, dsb. ¶
Walaupun artikel ini merangkumi butiran teknikal proses penggunaan, kitaran hayat lengkap kod daripada pembangunan kepada pengeluaran mungkin memerlukan lebih banyak langkah (pertimbangkan penggunaan pementasan, QA [Jaminan Kualiti/Jaminan Kualiti ] ], jalankan ujian, dsb.)
pementasan, ujian, QA, penyepaduan berterusan, pemindahan pangkalan data dan keserasian ke belakang sekiranya berlaku kegagalan semuanya amat disyorkan. Terdapat pelbagai alat mudah atau kompleks, salah satunya akan menjadikan proses penggunaan untuk memenuhi keperluan persekitaran anda lebih mudah (atau lebih canggih). Jangan lupa bahawa proses penempatan juga melibatkan pengemaskinian kebergantungan (biasanya melalui Komposer), pemindahan pangkalan data, mengosongkan cache dan perkara lain yang berpotensi, seperti menerbitkan sumber ke CDN (rujukTugas pasca penempatan biasa
).