Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
Our live server running PHP v5.2.6 (yes, circa 2008) needs an upgrade.
I'm thinking the best process is:
Copying over all of our live sites to my personal server
Testing our sites on my personal server with the newest versions of all of our software
Making the versions on my server live (so that there are no interruptions in web access)
Upgrading to the newest versions of all of our software on our live server
Moving all of our sites back to our live server
Making the sites on our live server live again
Could you give me a better solution to this issue (if one exists)?
I have done this, and I recommend doing the following:
Purchase the new server (or start renting the production server - if you don't own it)
Move all the files over to the new server, but make sure that you make sure that Google cannot crawl the site. You don't want duplicate content on both websites running at the same time. You can do this by editing the /robots.txt file.
Get all the applications up and running with your new sites. (make sure everything works)
Enable Google to crawl the sites on your new server.
Disable Google to crawl on your OLD server.
If you are with the same hosting provider ask them to switch over the IP addresses to your new server. If they cannot do this then you will have to do it via DNS (which is more dangerous because if the is a problem it can take DNS 24 hours to switch back to the old server)
Let the server run for about a week, and if you see everything okay shutdown the old one.
To me it's more safe this option because I have experienced issues with moving to a new OS LAMP development, and this process let me work out the issues without the stress of worrying when I switched it over.
Related
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I'm developing a website, and im doing it on its final destination domain, not on localhost, and its almost finished.
Now I've come to the point where I'm beginning to get worried about what I do when users start using the site and some problems occur, or maybe I want to add a features to the site.
Is there any best practices which will allow be to minimize risks ruinin website and customer UX during updates, how to do it correctly?
If your website is small and easy:
Create a development domain/subdomain
Code and test there
Record all database structure changes (do database changes on a db copy)
Record your actions you use to test your website
As soon as you are ready to release a new version there are two options:
Update db replica and switch domains
Turn main domain off, update code and db, turn on
If website is not that easy, there should be local development, testing, staging and production environments set up independendly. You dev, then you test what you did, then you copy and install your code on real data before pushing it live on production.
To track changes and easily deploy new version to each of environments there are many tools connected with version control systems like git
And there is a good answer on how to use dev-test-stage-production environments with git: git with development, staging and production branches
First of all you have to work on localhost, while developing any new feature, of fixing a bug.
I recommend you also to use GIT branches, so you can create a new branch to add feature of fix a bug.
After finish use GIT merge with your website master branch
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
What is the best way to connect a team of developers working on a project which runs on a VPS, We have Mac and windows development Environement and VPS is Based on CENT OS?
I am totally newbie at creating a shared codebase.
I am laravel, ionic, javascript, angular and node developer.
The ease of doing this is nearly zero when we have to continuously change code and multiple people have to update different script files on the Project from Mac and Windows development environment.
We use the later described technology, we want to connect to the servers and the code that is written should reflect on the servers. Right now we have to copy all the code and than paste it on the servers?
Should we go for SVN or GIT, and how to execute the Shared code base Environment?
Develop locally
You definitely have to go with git to synchronize your code between all developers.
Git will ease most of the synchronization / merging work. All you have to do is to get familiar with it and its workflow. I know it can seem a lot at first but since every company is using it, it's not a waste of time.
Each developer works on his own machine (localhost) and commits / pushes to git when it's working properly. Other developers pull the changes to get new updates from the other developers on the team.
Don't shy away from using branch system to work simultaneously on different features / part of you app and pull requests to review code of other developers.
Worry about deploying to the VPS later: setup your git repository (github, bitbucket) and work locally.
Deploy later
Then, once you've reached a working version of your app/website, you can push your code to the VPS server using git as well and make it available to all for testing. You have to have SSH access on it.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
I'm searching for a means to overpass the need for a web server when using a local web application. Why aren't there browser extensions or special browsers to do so? It seems very easy to code to me. The browser or extension would call a php interpreter to compose web pages from php files. Local urls (file:///) would be used. No web service or port would be necessary. Is this just nonsense? Or am I the first person to think about this? In fact, this does already work with static html files.
First edit: I was looking for a server for testing purposes, being able to compose output from php files, without the need to communicate through network ports. Maybe I should have started from here, but Stackoverflow does not allow this kind of posts.
That sounds nice, please go ahead and build that technology. I will also use it. But oh, for now that has nothing to do with SO.
Why web servers are needed even for local web application
Because they are web applications. Technically you don't need a web server for local stuff if all your application code relies on client side programming. You can just go ahead open your html files in browser.
Browsers know how to interpret client side code already, so why re-invent the wheel? If you ever wish to write 1 line of server side code then obviously you'd need a web server at that point.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
Hello fellow Programmers,
I am still a relatively new programmer and have recently gotten my first on-campus programming position. I am the sole dev responsible for 8 domains as well as 3 small sized PHP web apps.
The campus has its web environment divided into staging and live servers -- we develop on the staging via SFTP and then push the updates to the live server through a web GUI.
I use Sublime Text 2 and the Sublime SFTP plugin currently for all my dev work (its my preferred editor). If I am just making an edit to a page I'll open that individual file via the ftp browser. If I am working on the PHP web app projects, I have the app directory mapped to a local folder so that when I save locally the file is auto-uploaded through Sublime SFTP.
I feel like this workflow is slow and sub-optimal. How can I improve my workflow for working with remote content? I'd love to set up a local environment on my machine as that would eliminate the constant SFTP upload/download, but as I said there are many sites and the space required for a local copy of the entire domain would be quite large and complex; not to mention keeping it updated with whatever the latest on the staging server is would be a nightmare.
Anyone know how I can improve my general web dev workflow from what I've described? I'd really like to cut out constantly editing over FTP but I'm not sure where to start other than ripping the entire directory and dumping it into XAMP.
Are you using source code control? If not, you should. I suggest using Git, for example hosted on Github.
For a simple setup like this you don't need to use any special deployment tools; you can also use Git for deployment.
Developing directly on the staging server is not a great idea. Try to set up a development environment environment on your laptop.
You can push from your development machine to Github. Then then on either staging or the live server you can connect via ssh and pull from Github.
This allows you you to use all the power of Git to create branches and tags and to rollback to an earlier version if you make a mistake.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I've been a web developer for the better part of a decade and think that its time to revamp my workflow. As the volume of work continues to increase with my business, I'm looking for every possible way to save time.
What I'm Doing Now
All my sites are WordPress based
During development I'll work directly on a testing site (myproject.mytestingdomain.com) using Notepad++ and FTP
I'll then deploy the site to the live site
The Main Problem I'm Having
When developing additions to, I'm not sure how to sync the ever growing LIVE data of the site with a modified schema and development data. Usually additions to a site requires some additional rows to the wp_options table and some to the wp_posts table. How can I make sure this newly created data is in sync? Is there a program that I can use to compare and sync data?
What My Ideal Would Be
Local Dev
Git Version control
Auto FTP to development server
Better PHP editor (code completion, code hinting)
Any and all suggestions would be helpful!
I work at a development studio that deals with Wordpress sites a lot. We use several tools to keep everything synced up and easily deployed.
The first tool is Beanstalk (beanstalkapp.com) that we use to deploy code to production or staging environments via SSH after it has been pushed to the repository with Git.
The second tool that is really helpful is WP Migrate DB Pro (http://deliciousbrains.com/wp-migrate-db-pro/) which keeps the live copy of the database synced with my local development server.
I would recommend getting away from using FTP in favor of SSH for your managing your files and you should check out Sublime Text 2. It's miles better than notepad++ once you get it configured. There are several tutorials on Tuts+ that show you how to set it up for WP development.