Rumah >pembangunan bahagian belakang >tutorial php >Cara Menyebarkan Aplikasi Symfony dengan Capifony
Konsep Utama:
Bagaimana Capifony berfungsi:
Capifony melaksanakan satu siri arahan semasa penempatan. Secara asasnya, ia menggunakan susun atur direktori berstruktur:
releases
Setiap penempatan membuat direktori baru di sini, yang mengandungi salinan segar aplikasi anda.
shared
menyimpan fail dan direktori (mis., Muat naik, log, vendor) yang berterusan merentasi.
current
gem install capifony
capifony .
. Pilih strategi penempatan (akses SCM sisi pelayan terperinci di sini). Capfile
deploy.rb
deploy.rb
fail memerlukan penyesuaian. Berikut adalah konfigurasi sampel, menerangkan tetapan utama:
deploy.rb
<code class="language-ruby">set :application, "YourAppName" set :domain, "yourdomain.com" set :deploy_to, "/var/www/yourdomain.com" set :app_path, "app" # Adjust if your app directory is different set :repository, "git@yourgitrepo.com:yourusername/YourAppName.git" # Your Git repository URL set :scm, :git set :model_manager, "doctrine" # Or "propel" role :web, domain role :app, domain, :primary => true set :keep_releases, 3 set :dump_assetic_assets, true set :use_composer, true set :shared_files, ["app/config/parameters.yml"] set :shared_children, [app_path + "/logs", web_path + "/uploads", "vendor", app_path + "/sessions"] # Adjust paths as needed # Server Configuration (adjust user and paths as necessary) set :use_sudo, false set :user, "yourusername" set :writable_dirs, ["app/cache", "app/logs", "app/sessions"] set :webserver_user, "www-data" # Your web server user set :permission_method, :acl set :use_set_permissions, true ssh_options[:forward_agent] = true # Often needed for Git access default_run_options[:pty] = true # Helpful for troubleshooting # Example: Add a task to run Bower before Assetic before 'symfony:assetic:dump', 'bower:install' namespace :bower do task :install do run "cd #{latest_release} && bower install" end end </code>
Sediakan pelayan:
cap deploy:setup
releases
shared
Deploy: cap deploy
Penyelesaian masalah: ssh_options[:forward_agent] = true
. composer.json
dan bower.json
fail. logger.level = Logger::MAX_LEVEL
ke deploy.rb
untuk output terperinci. cap deploy:rollback
Soalan Lazim (Soalan Lazim):
Seksyen FAQ artikel asal memberikan jawapan yang komprehensif kepada soalan penggunaan Capifony yang biasa, meliputi topik seperti kemas kini ketergantungan, penjelasan cache, dan prosedur rollback. Rujuk bahagian itu untuk penyelesaian masalah terperinci dan amalan terbaik.
Tanggapan yang disemak ini memberikan penjelasan yang lebih ringkas dan teratur mengenai penggunaan Capifony, sambil mengekalkan maklumat penting dan menangani isu -isu yang berpotensi. Ingatlah untuk menyesuaikan konfigurasi ke persekitaran projek dan pelayan khusus anda.
Atas ialah kandungan terperinci Cara Menyebarkan Aplikasi Symfony dengan Capifony. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!