WAMP vs individually installing PHP, Apache, and MySQL - xampp

I am totally new to programming and to some new technologies. Right now I am using WAMP on my Windows Vista. For me, using WAMP is very convenient because I am gonna install once and no need for complicated configuration.
I was OK with it until someone told me that it's not good to use WAMP, EasyPHP, XAMPP, and MAMP because if one of the components such as MySQL crashes it won't work anymore. He said that it's best to install them separately and do a pain in the ass configure later.
Please advice.

For development and small low volume sites WAMP is just fine!.
If you are not reasonably experienced with installing configuring Apache, php and whatever SQL you are using then a WAMP package is still the better option as a suboptimal configuration is better than a broken one.
Once you are deploying to production and need to deal with larger transaction volumes and security issues then you should really install the components separately and custom configure for your particular needs.
However realistically if you get as far as a small/medium volume production application it will probably be deployed on a rented application infrastructure where all this will be done for you.
So yes stick with WAMP. Time is better spent getting your App right than learning the esoteric settings in the various config files.

WAMP has a clear goal: to provide a usable PHP environment directly out of the box. 0 configuration needed. 0 knowledge needed. You click and it works. If you are a newcomer, this is an obvious choice.
Configuring complex software like Apache and PHP is really difficult for a newcomer. If you're not actually going to use WAMP in a production environment, there is no reason you would have to touch the default configuration.
Making a separate installation for each of those components just doesn't make sense if you're discovering programming. When you're more experienced, you'll certainly enjoy editing obscure configuration files on a distant machine.
My advice is to go for WAMP on your development PC.

I don't think that the 'crash argument' is valid. It makes no difference if you install a bundle or single component - the problem is find the cause and to fix it. The bundles are designed for an easy start, the price to pay is that the configuration isn't meant for production use. I would prefer to learn using a local bundle and apply my knowledge/skills when I configure a production server (without any pain, because then I can).

WAMP--Windows Apache MySQL PHP
XAMPP--X(Multi OS) Apache MySQL PHP Perl
Wamp is better for newbies, To install, customize easily and learn the basic things in user friendly. Mainly on enabling the dll's in wamp is more easy than Xampp. But it will create many problems as kind of, when we restart the server it may not restarted properly and you need to do additional thing as restart your system or need to re-install wamp. The main drawback is, it support Windows Alone. Normally nowadays everyone prefer to go with Linux server as it have more security purpose. Hence if u develop using wamp, its useless for Linux Production Environment.
So i would suggest Xampp and its also a developer's choice.
It have more features than Wamp,
they are:
Tomcat
Perl
Supports Multi-OS
Filezilla FTP
PHP4
PHP5
It is better to restart the server separately for MySQL, Apache, Mercury, FTP.
For enabling the dll's in Xampp is not a hard task for developer and its a stable server.

Related

Laravel valet share production domain

Is it possible to serve my production domain through Laravel valet service??
I have my domain which I have purchased but I want to share my website through valet.
Laravel Valet is pretty much exclusively for local development and not recommended to run production code. It's essentially a lightweight shortcut to allow you to start developing in Laravel quickly. It is also exclusively maintained for a Mac - I mention this as most production websites are run on a Linux or Windows environment, and support for running on a Mac would be relatively small. (https://www.quora.com/What-is-the-Server-Operating-System-market-share)
Off the top of my head, this is also not a good idea as Valet proxies all folders that you run valet park to http://[folder_name].test URLs, which could theoretically open up security holes if you accidentally moved something in your local development environment into the parked folder. Essentially, it opens you up to a bunch of security issues, that just being one of the first ones.
I know it's tempting to want to just publish a site as everything "just works" on your local environment, but I would highly recommend finding a dedicated host for your website running in production. There are a plethora of hosting packages allowing you to run your Laravel application safely and cheaply.
Shared hosting is alot easier then Valet. I spent a good 4 hours trying to get valet working on my mac cause I had about. 5 versions of PHP. If you use Valet on a production server then you going to have to pay more for a more dedicated server that will allow you to install the software. And your getting a less productive enviroment. Your basically paying more for less quality. A shared hosting site will atleast provide support to fix any server issues non related to your web app and your paying less.

Laravel, only developing on remote server

Hello I have been wanting to get into working with a framework and Laravel seems like a decent one to try.
I have seen a lot of tutorials that tell you how to setup Laravel locally with Homestead or variants.
I am wanting to install and setup Laravel on my dedicated remote server with my hosting company. From there I want to be able to work with it on my local MacBook or MacPro.
I have not been able to find a good tutorial to make this happen in the fashion I want to do it.
I work with PHP and related daily but usually login to FTP and edit files with TextWrangler and save them and go about my day so my methods are dated and not efficient.
One side note is that I also have a Dell PowerEdge server running CentOS and VestaCP in my office as my development server so nothing is done locally per say (on my own computer) so the question and answer will apply to both my remote server and my remote but local development server.
Any suggestions are always welcome.
Best Regards,
Bradley
Assuming you have full root access to your remote servers, you should install composer on them and install Laravel in whichever way suits you. Then you can edit your project files just as if you were working on it locally.
Seriously though, the biggest thing you should add to your development arsenal (in case you haven't already) which will make your development process so much more resilient is Git.
Set up a free Bitbucket account, get a free Git client, and learn how commits, pushes, pulls, branches and deployments work. The easiest approach for deployment is to use a service such as Envoyer.
That way you can develop and test locally (even if 'locally' is a remote machine) and not really have to worry about breaking your app by making a mistake in controller or something on the live server.

Localhost software for Windows 7

What is a good piece of software to be able to have a set of files hosted from a localhost on Windows 7?
IIS 7 - really easy to use and it comes with a default website already setup. Just drop your files in and right click the site, then click start.
If you are interested in a LAMP port for Windows (preferring Apache over the built-in IIS) check out XAMPP. It bundles everything you typically need on a web server: Apache web server, MySQL database with web admin UI, PHP and Perl languagues, FTP and mail servers.
There is also WAMP, but I have no experience with that.
I'm using apache. Using apache on windows
You can install it, then install php ect. as you need them...
If you're looking for ASP/ASPX then either use VS internal web server, or IIS.
Assuming that your looking for a PHP/Apache/MySQL environment, I would recommend EasyPHP. It comes with the latest version of PHP, Apache, MySQL, Phpmyadmin and a pretty easy to use admin panel.
easy php is good stuff, my problem with it is that its just toooo slow... but the features are nice, sometimes you'd not mind the slowness because of the features on the Admin Panel that comes with it... But if you're looking for speed... then XAMPP or IIS is the way to go...
if you install them both you gonna need to configure the Apache and give it a port that does not clash with IIS...

In what OS should I host subversion?

I have decided to go with Subversion for a source control repository for my personal and side projects and I'm now trying to decide what OS to use. Currently my file server for my home network is Windows 7 beta. I'm wondering if I should wipe it and install Windows Server 2008 instead? Basically I'd like to know if there are things I could take advantage with a server OS that I can't with Windows 7. First thing that comes to mind is accessing subversion remotely with a VPN connection.
I'm a .net developer, but have dabbled in Linux a bit so I'm not completely turned off to the idea of an ubuntu or debian server...
I imagine the installation and configuration process might go off with fewer hitches if installed on Linux, just because of the package management, but that's assuming some experience with the package system of $whatever_distro. If you're comfortable with Windows, Subversion works perfectly well on there. I've set it up on both, but prefer the Linux installation process (easier Apache integration, in my view), but I had pre-existing Linux experience.
If you're familiar with Windows, I bet you'll find the installation and configuration process easier there. As others have said, many of the tools are cross-platform.
You can run a Subversion server on Windows or Linux (or whatever) so it really doesn't matter. Pick whichever one you already have and feel most comfortable with. Since you are a Windows developer I see no real reason to toss Linux into the mix though.
If your goal is to minimize the amount of work you put into the maintenance of subversion, go with the OS you are most comfortable with. Many maintenance scripts, and subversion hooks are written and available in perl and python which are available for both windows and linux.
One advantage to the Windows server OSes over their client counterparts is that the client OSes are limited as to the number of inbound connections. If you are going to be the only person working on the repo, this may not make a difference. However, if there are multiple people, then this would be an issue. XP Pro/Vista Ultimate are limited by Microsoft to 10 inbound connections. I cannot speak for Windows 7.
To make life easy, try VisualSVN Server. For personal projects there's no reason to setup a separate server just for SVN.
Windows 7 will be able to host Subversion with no problems whatsoever..
If your file-server is already setup and working under Windows 7, I'd say stick with that.. Adding SVN is no reason to install a new OS
You don't need a server at all to use subversion.
If you've already got a file server on your home network, and you're doing this only for you and your personal projects, just use a subversion client such as TortoiseSVN and create your repository (or repositories) on your file server via network share (or mapped network drive, etc).
I wouldn't recommend this for multi-user setups (unless each has their own repository), but for a single user this is the simplest option. And using this approach, to answer your question, you wouldn't gain anything by switching to a server OS such as Windows Server 2008.
I'd actually recommend going with a hosted Subversion provider instead of setting up Subversion on Windows or getting a second server for that purpose. I work for ProjectLocker, but if you Google "subversion hosting", you'll see there are a number of providers that offer free or reasonably priced solutions. The advantages:
It's a hosting provider's primary job to keep your code safe, secure, and accessible, so they focus on uptime, backups, and security monitoring so you don't have to
You don't have to learn how to be a system administrator or Subversion administrator; several providers have user interfaces that make it easy to manage users and permissions.
Hosting instead of DIY lets you focus on what you actually care about: writing great software
I suggest you take a look at ProjectLocker and some of the other providers and decide which one is right for you. You may decide that doing it yourself is the best option for you, but for many people in your situation, a hosted solution has met their needs.

What's the best way to develop against WordPress on Windows when you already have IIS/SQL Server installed?

If you want to develop against WordPress (i.e., have a local instance running on your machine so you can develop themes, get blogs and sites laid out, etc.) and you're running Windows on your development machine with IIS and SQL Server already installed, what's the best way to do it?
I found a method online which sets up a little "mini" server on Windows running instances of Apache and MySQL but they didn't advise using it on a machine with IIS already installed. Obviously one could install Apache and MySQL and do it that way but given what Windows affords you (i.e., methods of running PHP in IIS - I think Windows Server 2008 is even optimized for this), is that the best way? Are there ways to run WordPress with SQL Server as the backend? (I wouldn't think so but I thought I'd throw that out there).
And are there methods differing on the version of Windows (i.e., XP, Vista, Vista64)
I run XAMPP on a thumbdrive and install WordPress (usually multiple instances of it) on there. Then I start up XAMPP when I'm going to work on Wordpress development.
EDIT: this setup does require that IIS be stopped when the XAMPP server is running (or some byzantine configuration magic that I've never bothered to figure out. Since most of my personal needs for local IIS development are handled by the Visual Studio built-in instance of IIS, which can run side-by-side with XAMPP, I rarely have bother with anything else, but that probably won't work for everyone.
Install PHP, run Wordpress in IIS. Install MySQL which can be run side-by-side with MSSQL. The only thing you'll miss using IIS over Apache is mod_rewrite for prettier URLs.
Avoid running IIS and Apache on the same machine if at all possible. IIS likes to bind to all available IPs blocking Apache from binding to an IP, which you can get around if necessary, but it's not immediately clear what's happening.
I've been running this setup for years.
Since you are interested in developing for Wordpress I strongly suggest you use the most common WP setup: Apache, PHP and MySQL.
You can run Apache and IIS at the same time (I have IIS listening on port 81 and Apache on 80) or you can run only one at a time (create 2 bat files to start/stop the servers using the net start/stop command).
You can use IIS, PHP, MySQL to run Wordpress but there are some subtle differences that can drive you crazy or cause problems when you deploy on Apache.
You can certainly run IIS and Apache on the same box. We do it currently with Documentum/Apache and IIS on the same server. Just pick a range of addresses for one web server - 808x for Apache for example.
You should also consider using Thinstall from VMWare where you can virutalize an entire application - registry, .Net and all - distribute as a single .EXE. We do this now for packaging applications that don't play well together. You might want to virtualize Wordpress/Appache/MySql and set an IP (808x) for that configuration. This way you can move this to any server with IIS and it'll play well with different configurations.

Resources