Network adapter - Thunderbolt - Gigabit Ethernet - for iMac; Mac mini. StarTech.com Wall-Mount Server Rack with Built-in Shelf - Solid Steel.

A few weeks ago, The Rocket Yard ran an article detailing the many services that will be removed from macOS Server in the near future. Today, I’ll discuss how to bring back one of those services — web hosting — using both the Apache web server that is built into macOS and the full MAMP suite.

Apache Web Server
Most Mac users don’t realize it, but macOS comes with its own built-in web server. Apache is an open-source web server that has been available since 1995, and as of 2016, it was the engine behind 46% of all websites and 43% of the top million websites in terms of traffic.

Having a web server built into macOS is perfect for those who want to share information in a small workgroup or set up and test sites on a development web server before deploying them to an internet server. These instructions show you how to set up Apache server in macOS High Sierra. You’ll need to have some knowledge of the Terminal app and how to run command line programs, an understanding of web servers, and a familiarity with the vi editor.

To begin, we edit the Apache configuration file as root:

sudo vi /etc/apache2/httpd.conf

A web server is relatively useless without a server-side scripting language with which to handle interactions; the most popular languages are PHP, Perl, and Python. In this example, we’ll enable PHP and Perl. To do so, you’ll need to uncomment line 176 of the configuration file. In the vi editor, you can do this easily by typing 176G to go directly to line 176. Next, type an x over the # at the beginning of the following line to delete the # comment marker:

#LoadModule php7_module libexec/apache2/libphp7.so

We want to do the same to be able to run Perl scripts, which is in line 177 of the configuration file. Use your arrow key to go down to the beginning of the next line, then type the x over the # to delete the comment marker. The configuration file should then looks something like this around line 176 (see screenshot below):

Editing the Apache configuration file in the vi editor

To save your changes in the editor, type :w!

We still need to enable personal websites by uncommenting line 173, so type 173G and press return, then type an x over the # to delete it. The same must be done with line 513 of the file — type 513G and press return, then type an x over the # to delete it. Now we’ll save these two final changes and quit the editor by typing ZZ.

The last command just enabled a file named http-userdir.conf, and we now need to edit it: In Terminal, enter:

sudo vi /etc/apache2/extra/httpd-userdir.conf

In this configuration file, we need to uncomment line 16. Type 16G and press return, then type an x over the # to delete it. Save and exit by typing 16G.

Up until Mac OS X Lion, it was possible to share websites with a local workgroup and create personal websites with a click; to publish web pages, you simply put your html files into a Sites folder. For mac opera. Now we have to do a lot more work. Let’s manually create a Sites folder in Terminal and make a small test file so we know our web server is working.

Enter the following commands:

mkdir ~/Sites

echo “<html><body><h1>Welcome to my site</h1></body></html>” > ~/Sites/index.html.en

Next, we need to make sure that we have a user configuration file. To create one, type in

sudo vi /etc/apache2/users/<your short user name>.conf

Where <your short user name> is your Unix short user name. Don’t know what that name is? Look at the top of the Terminal window and you’ll see a name listed — that’s the short user name. In my case, it’s stevensande, so I’d enter

sudo vi/etc/apache2/users/stevensande.conf (don’t use this for YOUR configuration file!)

In that configuration file we want to enter the following (cutting and pasting into vi works):

<Directory “/Users/<your short user name>/Sites/”>
AddLanguage en .en
AddHandler perl-script .pl
PerlHandler ModPerl::Registry
Options Indexes MultiViews FollowSymLinks ExecCGI
AllowOverride None
Require host localhost
</Directory>

Once again, remember to replace <your short user name> with your short user name. Type ZZ to save the new configuration file and quit the editor.

If you’ve made it this far… congratulations! Now let’s check our configuration of Apache by running the following command in Terminal:

apachectl configtest

You’ll probably get a warning message that says “http: Could not reliably determine the server’s full qualified domain name” along with how to resolve that issue; since this is just for a local web server, ignore that warning — what you do want to see is the last line: Syntax OK.

If everything is fine up to this point, you’re ready to start up Apache. If any of the configuration file syntax is incorrect, you’ll receive warnings on what needs to be fixed.

At long last, we’re ready to launch the Apache httpd service:

sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist

To see our one line web page, launch Safari or your favorite browser and enter http://localhost/

You should see:

It works!
To see your user home directory, enter http://localhost/~<your short user name>, once again replacing <your short user name> with your Unix short user name. It should say:

Welcome to my site
Should you decide to shut down the Apache service, there’s a simple one-line Terminal command to do so:

Interior

sudo /usr/sbin/apachectl stop

Making life easier with MAMP
That was a lot of work to get things up and running, wasn’t it? There’s a much easier way to set up a local test server! For quite a while, developers have realized that packaging Apache, MySQL (a database server), and PHP/Python/Perl was the best way to get a very powerful web server. Add “Mac” to the beginning of this, and you have MAMP — Mac, Apache, MySQL, and PHP/Python/Perl. The “AMP” distributions (LAMP for Linux, WAMP for Windows, MAMP for Mac) are the backbone of the wildly popular WordPress platform, so if you want a very complete WordPress development environment on your Mac, you’ve come to the right place.

MAMP comes in two varieties; the free MAMP solution for a personal web server and MAMP Pro ($59), which adds additional services like email, dynamic DNS, and more. For this post, we’ll install and configure the free MAMP.

1)Download MAMP from the MAMP website

2) Open the .pkg file and follow the installation instructions to install MAMP to your Mac

3) Once the installation is complete, you’ll find two folders in your Applications folder — one for MAMP, and another that is a 14-day free trial for MAMP Pro. Open the folder named MAMP and launch the MAMP app. You’ll see something that looks like this screenshot:

4) Click the “Start Servers” button.

MAMP will start both the Apache and MySQL servers, then launches a webpage that confirms that your MAMP installation is complete (see screenshot below):

(The MAMP welcome page, indicating that all services are running.)

The “My Website” link shows an empty page, but you can change that by placing an index.html file into the htdocs folder found in the MAMP folder. It’s easy to change the Document Root directory by going to MAMP > Preferences > Web Server.

Note that MAMP Pro also brings “Extras” to the table; these are packages designed by the MAMP team to install quickly and bring added functionality. Remember my comments about WordPress? There is not only a MAMP Extra for WordPress, but for Joomla, Drupal and other content management systems as well.

Sonnet has announced a 4U rackmount enclosure and expansion chassis for the new Mac Pro, allowing users to horizontally mount their Mac Pro in a standard data center rack with PCIe expansion capabilities.

The xMac Pro Server includes three PCIe single-width expansion slots, with room for one double-width and one single-width card, Thunderbolt 2 compatibility, and a mounting kit for additional storage or optical drives. On the back, the rack includes three USB 3.0 ports, two Gigabit Ethernet ports, and an HDMI port, with a single USB 3.0 port on the front. It includes a 300W power supply and a 75W PCIe power connector for supplemental power to certain power-hungry PCIe cards.

The new Mac Pro has become the object of desire, but a lustrous finish hides its true beauty—the massive power within. If you're a pro user in the video or audio industries, the Mac Pro offers the power you need, but lacks the built-in expandability you count on. In order to achieve this engineering feat, Apple® designers stripped away components and space to a minimum, taking out PCIe slots and drive bays, and packed the remaining components into a small cylinder. Its compact size makes the new Mac Pro more transportable and rackable, but prevents onboard installation of PCIe expansion cards. In addition, the computer still requires an enclosure to make it road- or rack-ready and provide convenient cable management. Sonnet's xMac Pro Server PCIe expansion system/4U rackmount enclosure addresses these issues and increases a Mac Pro's potential in a big way.

Sonnet claims the xMac Pro Server will ship in early June, offering a sign-up sheet for interested customers on its website. It has a suggested price of $1,499.

The company announced Thunderbolt docking stations nearly a year ago but has delayed shipment several times.

Update 12:35PM 3/27/2014: Pricing information added.

Buyer's Guide: Mac Pro (Buy Now)