XAMPP可用于具有Windows OS的生产服务器

I am confused regarding using XAMPP as a bundled software for PHP , Mysql , Apache.

My specific requirements are as below

  1. Production server needs to Windows OS (as i need some third party tools to be integrated and need to execute that by command lines and those thirt party tools supports only Windows OS)
  2. Need to make application in Zend Framework 2.0

The points in which i have doubts are ,

  1. We can run this application in IIS , but is ZF2 have performance issue with IIS ?
  2. Can xampp used on production server ?
  3. is there any alternate way to install PHP , Apache , Mysql individually , and it should be secure and reliable method .

Any help is appreciated.

Thanks in advance.

XAMPP, with a "secure" config, can be used in a production environment..but it's not recommended. XAMPP is just a stack of software for easy deploying a fully developer friendly environment.

With IIS you can gain performance, cause of it's caching mechanisms. I would install MySQL, PHP without any software stack like XAMPP and add the IIS to the Windows Server. Configure everything and you are good to go.

If you don't wont to use IIS or Apache, try to have a look to nginx.

The performance will increase if you select the right components on windows. For instance, if you use IIS, then also use the Wincache PHP extension.

In general: it is possible to secure a development server stack. Install the stack and alter the settings until you get a safe environment.

I would suggest to use Nginx as the webserver and MariaDb as the database. You might choose InnoDb for performance reason. There is also the option to add Naxsi Firewall Rules to Nginx to secure the server. For high-performance, especially streaming you might try this: http://nginx-win.ecsds.eu/ It's also worth to look at WPN-XM (sorry, shameless plug).

Keep in mind, that updating the components of your production system is key to keep it safe. Keeping a production server environment save is easier on Linux, where you have a proper package management tool (e.g. apt-get). But afaik, WPN-XM is the only server stack with a software registry on windows, which allows that.

For running Zend Framework 2 you need PHP. You might also consider tweaking the Nginx configuration and add some rewrite rules for short-urls. But a small config like this would suffice: https://stackoverflow.com/a/19734670/1163786

To answer question 2 from your comment: Yes, Nginx and Apache can work together. Nginx will act as reverse proxy before Apache and will only serve static files. All request for static files will be very fast and it will consume less memory for concurrent requests because Nginx is event-based. Apache would handle the non-static parts/ dynamic parts.

"I want Apache , PHP and Mysql only , so is that will be supported by Nginx." It's possible. Static request would be handled by Nginx. Dynamic request would be handled by Apache, so ZF2 is served by Apache/PHP.