Forgot your password?
typodupeerror
Linux

Newb-Friendly Linux Flavor For LAMP Server? 382

Posted by samzenpus
from the setting-the-bar-low dept.
First time accepted submitter bhcompy writes "I need to setup a system to serve 2500 users and I've been looking at a LAMP setup. This is not commercial, more of a personal side project for some friends. I've no experience configuring or administering a Linux server having worked with MS and PICK based solutions my whole life, so I'm looking for something that will be relatively straightforward to implement and not a chore to manage and preferably not completely CLI. I will be serving a forum(phpBB 3 suits my needs and seems adequate) and a variety of PHP driven content with a MySQL backend. Requirements are PHP 5.3.0+ and MySQL 5+. Suggestions?"
This discussion has been archived. No new comments can be posted.

Newb-Friendly Linux Flavor For LAMP Server?

Comments Filter:
  • Re:Easy. (Score:4, Informative)

    by houstonbofh (602064) on Sunday September 25, 2011 @10:47AM (#37507898)
    Ubuntu has the largest mindshare, and the most nubie friendly support http://ubuntuforums.org/ [ubuntuforums.org] as well as paid support if you get in over your head. You can install the "Server" version, and with "sudo apt-get install ubuntu-desktop" you would have the full GUI. You you can run a server on the desktop version, but with that many users, you will want a server kernel.
  • Re:Easy. (Score:2, Informative)

    by Keruo (771880) on Sunday September 25, 2011 @10:48AM (#37507910)
    Debian testing should fit those requirements nicely. It's stable enough to be run in non-profit production.
  • CentOS (Score:3, Informative)

    by firegate (134408) on Sunday September 25, 2011 @10:53AM (#37507946) Homepage
    CentOS and RHEL have become the industry standard for LAMP setups, for whatever its worth. Given that you probably don't need a support contract, CentOS 6 would fit the bill nicely. A free control panel like Webmin would probably make your life a bit easier in the configuration department.
  • by Nemilar (173603) on Sunday September 25, 2011 @10:54AM (#37507948) Homepage

    I'd suggest that you go with one of the mainstream/common Linux server distros: either RHEL (for which you can use CentOS, which is essentially the same, minus the RedHat-copyrighted bits) or Ubuntu Server.

    Either of these can be configured to use a GUI. I'd actually pick RHEL/CentOS over Ubuntu, and during the install (which is graphical), you can select to install a web+database server along with a Desktop (GUI). The installation is fairly straightforward; the most complex part is arguably the partitioning, although you can use the guided partitioner to just use all free space on the disk. Partitioning isn't something that's linux-centric, although the partition scheme for Linux is perhaps a bit more complex than what'd you would expect coming from a Windows world (dedicated swap device, LVM to virtualize the partitions, etc..). If you use the guided "do it for me" option, you can avoid getting your hands wet with this complexity.

    The primary reason I'd suggest going mainstream is that the support will be there. If you choose some OS that no one really uses, you'll be hard-pressed to find distro-centric documentation for it. If you go with Ubuntu or RedHat, you can use Google to get through any obstacles you may find. There are plenty of tutorials available when you google for a simple [do this task] on [this distribution]. For example:

    http://www.google.com/search?gcx=w&ix=c1&sourceid=chrome&ie=UTF-8&q=install+phpbb+on+rhel [google.com]
    http://www.google.com/#sclient=psy-ab&hl=en&safe=off&site=&source=hp&q=install+phpbb+on+ubuntu+server [google.com]

    While you could probably use this documentation to complete a task on another distro, it's helpful to have a tutorial for the specific OS you're using; all the commands will be the same, and any dependency problems, etc... will all be accounted for.

    Additionally, should you decide that you want to learn more and play around, having something mainstream installed means that your learning experience will be directly relevant to anything you want to do down the line.

    As an alternative, you could go with a pre-built phpBB appliance. http://www.turnkeylinux.org/phpbb [turnkeylinux.org] is a single ISO or VDK that is built on Ubuntu Server and comes pre-configured with phpBB (they have many other applications available as well - highly recommended!). It'll ask you a few questions during the install, and once complete, you'll boot up into a fully-functional Linux server with phpBB already running.

  • by opportunityisnowhere (1877452) on Sunday September 25, 2011 @10:56AM (#37507968)
    These are arguably the best options for beginners. Both have great communities and any issue you have you can typically find a solution on Google in 5 minutes. Ubuntu even has a LAMP package that will setup everything(well, most everything) you need. Couple pointers: Disable root login via SSH as soon as possible. You're asking for a bruteforce attack if you leave that enabled. Set up something like fail2ban or OSSEC monitoring to help thwart bots that are trying to break into your server.
  • Re:Easy. (Score:4, Informative)

    by taiwanjohn (103839) on Sunday September 25, 2011 @11:19AM (#37508120)

    Yes. Don't fear the CLI. As the GP says, UbuntuForums is a great resource, and in many cases you can cut-n-paste commands directly from there into your terminal. If the OP is completely new to the CLI, he/she will want to be cautious about this and do some research (RTFman-page) to make sure the commands do what's wanted.

    From the summary, it sounds like the OP wants to set up a forum for some group. Therefore, most of the "hard" part (the CLI stuff) will be required during initial setup. Once phpBB is up and running, most of the admin stuff will be done within the native phpBB interface.

    One suggestion: get familiar with one of the numerous backup/restore utilities available. Google around for a comparative review and you'll probably find one that fits your GUI requirements. Figure out how to use it (preferably before you go live with the server) so you can easily save your bacon in case of a catastrophic fuckup.

  • Another approach (Score:5, Informative)

    by Will.Woodhull (1038600) <wwoodhull@gmail.com> on Sunday September 25, 2011 @11:36AM (#37508224) Homepage Journal

    I am surprised that no one has mentioned XAMPP or Portable XAMPP yet.

    I used Portable XAMPP under WinXP as a development environment for several years. It comes with a couple of GUI management tools and has an active community behind it. Advantages: you get a LAMP-like setup on a removable drive running under an OS you are already comfortable with. If things go totally weird, you can replace the XAMPP drive with one loaded with an earlier backup and be confident that none of the weirdness has been left in your system. I found that was a very comforting thought when I was going through the newbie jitters phase.

    XAMPP is probably powerful enough to handle 2,500 users doing typical Internet stuff (avoiding serving out hundreds of full length movies, etc). So it might be suitable for your production environment as well as development: install it on a fast fixed HD using Ubuntu Server as the OS and you will have a bullet proof operation that is easy to manage and develop for. XAMPP is plain vanilla and seems to play well with any of the Linux servers.

    Here is a link [portableapps.com] to one source of XAMPP goodness. Anyone who is still using Windows should think about exploring the PortableApps site, too. There are some FOSS gems there.

  • Re:Go hosted? (Score:4, Informative)

    by Ash-Fox (726320) on Sunday September 25, 2011 @12:34PM (#37508504)

    I'd personally go nginx and php5-fpm with mysql backend rather than apache. Its much more likely to perform well with a 2500 user phpbb than apache.

    That's really a side effect of not setting up the OS and Apache properly.

    If you're expecting a large amount of simultaneous connections, configure the OS to provide that many file descriptors to Apache and configure Apache's MPM preforking accordingly to that ratio with mod_php. I suggest avoiding threaded MPM for security, recovery and stability reasons.

    You will suddenly find that nginx's performance is not so great in comparison and doesn't have the disadvantage of PHP-FPM's additional usage of file descriptors.

    Apache isn't very good against nginx when it's starved of file descriptors, but that's normally due to not configuring the system accordingly for the load expected. Regardless, by not configuring your system accordingly, you're generating additional CPU load as the software has to fall back on other more CPU intensive methods to deal with the lack of file descriptors. The extra load on the CPU usually costs more power as well as the potential capacity if it had more file descriptors available.

  • Why use Linux? (Score:2, Informative)

    by taustin (171655) on Sunday September 25, 2011 @02:31PM (#37509098) Homepage Journal

    I know I'll get booed for this, but why use Linux at all? Apache, PHP and MySQL are all available for Windows, and run on any version. I use a Linux distro for my firewalls, but Windows for everything else, including two internal web servers, two mail servers and multiple file servers. Yeah, you can do the same thing with less hardware with Linux, and it's probably a bit more stable, plus less work to keep up to date, but if you know Windows, and don't know Linux, you're better off staying with Windows. You don't really need that much more hardare, mostly RAM, and that's not that expensive these days, and you'll be more secure and stable with an OS you know than something brand new. Plus, it's more likely to work.

    (As a side note, I'd be very, very cautious about using XAMPP. It's not intended for a production environment, and it installs in a very insecure state. Plus, last I checked, they were pretty slow about adding new versions of stuff to their package, so things tended to be out of date. You can get all the components - Apache, MysQL, PHP, for free, direct, at the current version, from the people who make them. And while Mercury is a fine mail server, it tends to be updated slowly. Even if you go with XAMPP, use hmailserver for your email instead.)

  • Debian Stable (Score:4, Informative)

    by Trogre (513942) on Sunday September 25, 2011 @08:37PM (#37510954) Homepage

    I may get flamed by the Ubuntu/Fedora crowd for this, but for servers I use and recommend Debian stable.

    There are two major reasons for this: great support and things don't change unexpectedly. Because of its long release cycle you rarely see the latest and greatest versions of anything in the repos, but if anything mission-critical is needed these can be installed manually. Some recent python libraries or Firefox builds come to mind. See http://bugs.debian.org/release-critical/ [debian.org] for a graphical view of recent Debian releases.

    The current Stable release ("Squeeze") meets your MySQL and PHP version requirements (5.1 and 5.3.3 respectively).

This screen intentionally left blank.

Working...