Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 547661
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T10:59:51+00:00 2026-05-13T10:59:51+00:00

I am interested in finding out how folks are deploying their CakePHP applications. I

  • 0

I am interested in finding out how folks are deploying their CakePHP applications. I have recently been approached about doing some freelance CakePHP development, which would be a nice opportunity for me to get some experience in the presentation tier (in my FT job I do Java EE development in the business and persistence tiers).

My thoughts are a bit disorganized at this point, but I’m considering the following scenarios:

  • Developer working in an IDE modifies a file, which is automatically (in the background) synchronized with a development web server running locally. This scenario is how I would ideally like to do development… make a change and be able to see the change in action without any extra steps.

  • Developer working in an IDE modifies a file, which is automatically (in the background) synchronized via FTP with a development web server running remotely. This scenario would be useful when I’m traveling using my netbook (which runs my IDE slowly enough as it is without a web server in the mix).

  • Administrator deploys the latest version of a CakePHP application from a source code repository to a web server running locally.
  • Administrator deploys the latest version of a CakePHP application from a source code repository to a web server via FTP.
  • Administrator deploys an older version of a CakePHP application from a source code repository to a web server running locally.
  • Administrator deploys an older version of a CakePHP application from a source code repository to a web server via FTP.

The development tools that I’m most comfortable with are Eclipse, Ant, and Subversion. My preference is to continue using those, but I would consider switching if doing so makes it easy to achieve the scenarios.

Questions:

  • Are these reasonable scenarios, or should do I need to think about development and deployment in a different way?
  • What tools exist that can help simplify development/deployment? Would it be better for me to roll my own solution with Ant, scripts, etc?
  • How do we handle database issues during deployment? How are database connection properties specified for a particular deployment? What if updating to a newer version (or reverting back to an older version) of the CakePHP application requires a change to the database schema and data migration?
  • How do we configure properties that vary between deployments? For example consider increased debug and logging levels used during development, preventing payments from being sent to payment gateways during development, etc.
  • How does upgrading or reverting a deployment affect customers? For example what if they are in the middle of a transaction (e.g. purchasing a product)?
  • How do we handle different CakePHP installation types? Files may need to be installed in different locations depending on the installation type. How can we know where files should be installed? The CakePHP book describes development, production, and advanced installations.

Sorry for so many questions in one post, but I think the questions are all related and thought it would be useful to keep the discussion in one place.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T10:59:51+00:00Added an answer on May 13, 2026 at 10:59 am

    Are these reasonable scenarios, or should do I need to think about development and deployment in a different way?

    Seems reasonable, although the FTP synchronisation makes me think of Dreamweaver. 🙂

    Consider using an IDE that allows you to connect to a server over (S)FTP, or use one of the following…

    What tools exist that can help simplify development/deployment? Would it be better for me to roll my own solution with Ant, scripts, etc?

    Jenkins, Capistrano, Phing, Ant, git push/pull, rsync, etc.

    How do we handle database issues during deployment? How are database connection properties specified for a particular deployment? What if updating to a newer version (or reverting back to an older version) of the CakePHP application requires a change to the database schema and data migration?

    Use cake schema generate and cake schema run update.

    How do we configure properties that vary between deployments? For example consider increased debug and logging levels used during development, preventing payments from being sent to payment gateways during development, etc.

    Name files that differ accordingly (ie. core.php.prd vs core.php.dev) and rename on install.

    How does upgrading or reverting a deployment affect customers? For example what if they are in the middle of a transaction (e.g. purchasing a product)?

    So your application files don’t end up in an inconsistent state, you should begin by checking out a fresh copy of the application to a new folder. Copy across any user submitted files, rename *.prd files, and then switch the old copy with the new copy (by renaming or using symlinks). Sessions should be stored somewhere that will survive the upgrade (ie. php or database, rather than cake).

    How do we handle different CakePHP installation types? Files may need to be installed in different locations depending on the installation type. How can we know where files should be installed? The CakePHP book describes development, production, and advanced installations.

    The development install is just as secure as any PHP application that uses .htaccess files to redirect requests (people won’t see your code unless you uninstall/misconfigure mod_rewrite and PHP). The production install is slightly more complicated unless you can edit the document roots of your virtual hosts. The advanced install allows you to install Cake anywhere in the filesystem, but adds more complexity (since your files sit in two seperate locations, but may sit in a single repo)

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 292k
  • Answers 292k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer Have you considered using gitosis ? I am not sure… May 13, 2026 at 6:08 pm
  • Editorial Team
    Editorial Team added an answer $flag = 4; is not in the global scope. If… May 13, 2026 at 6:08 pm
  • Editorial Team
    Editorial Team added an answer You'll need to clean up the code a bit and… May 13, 2026 at 6:08 pm

Related Questions

Following on from this question , I am interested in finding out how you
Given is a set S of size n, which is partitioned into classes (s1,..,sk)
I am currently working within a WPF user control (the root element of my
I am new to Entity Framework, and ORM's for that mather. In the project
I am attempting to parse text from a <cfoutput query=...> . I am interested

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.