The 80 port in the system has been occupied because of the use of lampp, so it is not possible to use Nginx again to parse:
Deploy/staging Server "yan.com", User: "Root", Roles:%w{app DB web}, My_property:: My_valueset:branch, ' master ' set:rail S_env, ' production ' Set:d eploy_to, "/opt/lampp/htdocs/#{Fetch (: Application)}" set:p uma_state, "#{shared_path}/tmp/ Pids/puma.state "Set:p uma_pid," #{shared_path}/tmp/pids/puma.pid "set:p uma_bind," tcp://0.0.0.0:9951 "set:p uma_conf , "#{shared_path}/puma.rb" set:p uma_access_log, "#{shared_path}/log/puma_error.log" set:p uma_error_log, "#{shared_ Path}/log/puma_access.log "Set:p uma_role,: Appset:p uma_env, Fetch (: RACK_ENV, Fetch (: rails_env, ' production ')) set: Puma_threads, [0, 16]set:p uma_workers, 0set:p uma_init_active_record, Falseset:p Uma_preload_app, True deploy.rb # Confi G Valid for current version and patch releases of Capistranolock "~> 3.10.1" set:application, "Dsadas" Set:repo_url, "[email protected]" set:p uma_role,: Appset:p Uma_init_active_record, TrueSet:p uma_config_file, ' config/puma.rb ' # Set:bundle_ Gemfile, "china_enterprise/gemfile" # Default branch is:master# ask:branch, ' git rev-parse--abbrev-ref HEAD '. chomp  ; # default Deploy_to directory is/var/www/my_app_name# set:d eploy_to, '/var/www/my_app_name ' # default value for:s CM is:git# SET:SCM,: git # Default value For:format is:airbrussh.# set:format,: airbrussh # You can Configu Re the AIRBRUSSH format using:format_options.# These is the defaults.# set:format_options, Command_output:true, Log_fi Le: ' Log/capistrano.log ', Color:: Auto, truncate:: auto # Default value for:p ty is false# set:p ty, true # Defa Ult value For:linked_files is []# append:linked_files, ' config/database.yml ', ' config/secrets.yml ' Set:linked_files, fe TCH (: Linked_files, []). Push ( ' config/database.yml ', ' config/secrets.yml ', ' config/wechat.yml ') # Default value for Linked_dirs is []# append : Linked_dirs, ' log ', ' tmp/pids ', ' tmp/cache ', ' tmp/sockets ', ' Public/system ' Set:linked_dirs, Fetch (: Linked_dirs, []). Push ( ' log ', ' tmp/pids ', ' tmp/cache ', ' tmp/sockets ', ' public/assets ', ' public/uploads ') # set: Sidekiq_config, ' config/sidekiq.yml ' # Default value for default_env is {}# set:d efault_env, {path: '/opt/ruby/bin: $PATH ' } # Default value for keep_releases is AA set:keep_releases, 5namespace:d eploy do desc ' Restart applica tion ' task:restart do on roles (: App), in:: Sequence, Wait:5 do & Nbsp;end end after:restart,: ' Puma:restart ' #添加此项重启puma after:p ublishing,: Restart after:restart,: Clear_cache do on roles (: Web), in:: Groups, Limit:3, Wait:10 do end endend capful # Load DSL and set Up Stagesrequire "Capistrano/setup" # Include Default Deployment Tasksrequire "Capistrano/deploy" # Load the SCM plugin appropriate to your project:## require "Capistrano /SCM/HG "# Install_plugin capistrano::scm::hg# or# require" CAPISTRANO/SCM/SVN "# Install_plugin Capistrano::SCM::Svn# Orrequire "Capistrano/scm/git" Install_plugin capistrano::scm::git # Include tasks from and gems included in your G emfile## for documentation in these, see for example:## https://github.com/capistrano/rvm# https://github.com/capistrano/rbenv# https://github.com/capistrano/chruby# https://github.com/capistrano/bundler# https://github.com/capistrano/rails# https://github.com/capistrano/passenger# require "CAPISTRANO/RVM" # require "capistrano/rbenv" # Require "Capistrano/chruby" require "Capistrano/bundler" require "capistrano/rails/assets" Require ' Capistrano/puma ' Install_plugin Capistrano::P uma, load_hooks:falserequire "Capistrano/rails/migratiONS "# require" Capistrano/passenger " # Load custom tasks from the ' lib/capistrano/tasks ' if you had any Defineddir.glob ( "Lib/capistrano/tasks/*.rake"). The main problem with each {|r| import R} is to use Apache for parsing: <virtualhost *:80> ServerName crisp-code.com documentroot/var/www/crisp-code.com/current/public # Redirect All Requests that don ' t match a file on disk under DocumentRoot get proxied to puma rewriteengine on rewritecond% {document_root}/%{request_filename}!-f rewriterule ^/(. *) $ Http://127.0.0.1:9951%{request_uri} [P] LogLevel warn customlog ${apache_log_dir}/crisp-code.com.access.log combined ErrorLog ${APACHE_LOG _dir}/crisp-code.com.error.log # Don ' t allow client to fool Puma into thinking connection are secure Requesthea Der unset x-forwarded-proto # Anything under public are open to the world <directory/var/www/crisp-co de.com/current/public> Satisfy any allow from all Require all granted options-multiviews </Directory> # Disable Etags (https://github.com/h5bp/server-configs-apache/tree/master/doc# configure-etags) # Set expiration date for all assets to one year in the future <location ^/assets/.*$>& nbsp; # Use of ETag was discouraged when Last-modified is present Header unset etag &nbs p; Fileetag none # RFC says only cache for 1 year expiresactive ON&NBSP;&NBSP;&N Bsp ExpiresDefault "Access plus 1" </Location> # Compress HTML on the fly Addoutputfilterby Type DEFLATE text/html </virtualhost> <virtualhost *:80> ServerAlias www.crisp-code.com Redirect 301/http://crisp-code.com</virtualhost>
Capistrano + Puma + Apache