Mac Xampp Htdocs

Basically you need to download XAMPP for Mac, then install this software, after that go to download WordPress and install WordPress on Mac. Now let’s dive into the details, specifically by looking at some tricky steps. Install XAMPP for Mac. Go to download the latest version of XAMPP for Mac from its official site here. At the time of writing. Test page for localhost with DocumentRoot set to /Applications/XAMPP/xamppfiles/htdocs An alternative is to re-define the DocumentRoot configuration in /Applications/XAMPP/xamppfiles/etc/httpd.conf to point to another folder and place your web site content in this new location. I've covered installing XAMPP on your Mac or PC in another tutorial. If you don't already have it setup, go through that tutorial first. How to install WordPress in XAMPP from scratch: Make sure XAMPP Control is running; Create a new database; Create a folder in /xampp/htdocs/ Download WordPress to the folder. Download XAMPP for Mac OSX - Be sure to select the proper version of PHP. For Webucator classes, any version after 5 will be fine. Open the downloaded file (the DMG-Image). Drag and drop the XAMPP folder into your Applications folder. Where to find htdocs in XAMPP Mac, In the 'volumes' tab, you have to mount it first.

  1. Mac Xampp Change Htdocs Location
  2. How To Use Xampp On Mac
  3. Mac Xampp Htdocs 場所
  4. Xampp Macbook

A web site located on a local computer is accessed in a browser through the URL localhost and normally served by a local Apache server. There are two parts to this process. The first is the resolution of the name localhost to the IPv4 loopback address which is configured in the local computer’s hosts file.

On macOS this is /private/etc/hosts:

Mac Xampp Change Htdocs Location

The /private/etc/hosts file on macOS

Throughout the remainder of this article the URL localhost is synonymous with http://localhost, and

The second part is the configuration of the local Apache server to tell it where to locate and serve the web site’s files. This location is known as the DocumentRoot and is normally configured in a file named httpd.conf. The location of this file will differ depending on how your computer provides a local Apache environment. For XAMPP this is /Applications/XAMPP/xamppfiles/etc/httpd.conf and below is part of that file showing the default DocumentRoot configuration:

The default DocumentRoot configuration in /Applications/XAMPP/xamppfiles/etc/httpd.conf

For requests to localhost, the Apache server in XAMPP serves the file index.php located in the DocumentRoot folder /Applications/XAMPP/xamppfiles/htdocs/:

Redirecting to localhost/dashboard in /Applications/XAMPP/xamppfiles/htdocs/index.php

Line 8 of index.php performs a redirect from localhost to localhost/dashboard/ where Apache serves the XAMPP Welcome Page generated by the file index.html located in /Applications/XAMPP/xamppfiles/htdocs/dashboard/:

To have Apache serve your own web site content there are two main options. The first is to place it within the default DocumentRoot. The second is to place it outside of the default DocumentRoot and use the Alias directive to map a URL to this location.

In the following examples, the generic index.php file below is placed within the DocumentRoot or aliased location and simply displays its name and location within the server’s folder structure:

Generic index.php used in examples

1. Place Web Site Content Within the DocumentRoot

Perhaps the easiest option – and the one requiring least change – is to place your web site content within the default DocumentRoot folder /Applications/XAMPP/xamppfiles/htdocs/ remembering to replace, rename or delete the existing index.php there.

A request to localhost then serves the following page:

An alternative is to re-define the DocumentRoot configuration in /Applications/XAMPP/xamppfiles/etc/httpd.conf to point to another folder and place your web site content in this new location. This folder does not have to be within the /Applications/XAMPP/ folder structure. Below the DocumentRoot is changed to /User/steve/Sites/mysite:

Re-defining the DocumentRoot configuration in /Applications/XAMPP/xamppfiles/etc/httpd.conf

A request to localhost now serves the following page:

XamppMac Xampp Htdocs

2. Place Web Site Content Outside the DocumentRoot

There’s another pre-defined location within XAMPP where you can place your site files. This is /Applications/XAMPP/xamppfiles/apache2/htdocs/. Navigating to the end of the Apache configuration file /Applications/XAMPP/xamppfiles/etc/htppd.conf we see:

Referencing additional configuration files in /Applications/XAMPP/xamppfiles/etc/htppd.conf

Below is the /Applications/XAMPP/xamppfiles/apache2/conf/httpd.conf file passed as an argument to the Include statement on line 523:

Mapping a URL to a directory in /Applications/XAMPP/xamppfiles/apache2/conf/httpd.conf file

On lines 1 and 2 the Alias directive is used to map a URL containing /bitnami/ or /bitnami to /Applications/XAMPP/xamppfiles/apache2/htdocs/ or /Applications/XAMPP/xamppfiles/apache2/htdocs respectively, allowing Apache to serve files outside of the DocumentRoot. As such, a request to localhost/bitnami should cause Apache to serve /Applications/XAMPP/xamppfiles/apache2/htdocs/index.html.

Augusta velvet task chairs. However out-of-the box, a request to localhost/bitnami results in a 403 Forbidden error:

To understand why this is happening let’s take a look at another section of the Apache configuration file /Applications/XAMPP/xamppfiles/etc/htppd.conf:

Denying access to the server’s entire filesystem in /Applications/XAMPP/xamppfiles/etc/htppd.conf

How To Use Xampp On Mac

Using Require all denied, access to the server’s entire filesystem is forbidden and only granted to named directories if explicitly given. As an example, Require all granted explicitly grants access to /Applications/XAMPP/xamppfiles/htdocs as part of the Directory block on line 259 of /Applications/XAMPP/xamppfiles/etc/htppd.conf.

Explicitly granting access to an individual directory in /Applications/XAMPP/xamppfiles/etc/htppd.conf

However, if we look again at /Applications/XAMPP/xamppfiles/apache2/conf/httpd.conf there is no Require all granted. Instead we see Order allow,deny and Allow from all:

The deprecated Order and Allow directives in /Applications/XAMPP/xamppfiles/apache2/conf/httpd.conf
Mac Xampp Htdocs

The Order and Allow directives are provided by Apache’s mod_access_compat module and as of Apache v2.4 have been deprecated in favour of the Require directive provided by the mod_authz_host module. Both of these modules are loaded by XAMPP so either Order allow,deny together with Allow from all or Require all granted by itself should work, but the Apache documentation states:

Mixing old directives like Order, Allow or Deny with new ones like Require is technically possible but discouraged. mod_access_compat was created to support configurations containing only old directives to facilitate the 2.4 upgrade. Please check the examples below to get a better idea about issues that might arise.

Let’s replace the Order and Allow directives with a single Require directive:

Replacing the deprecated Order and Allow directives with the Require directive in /Applications/XAMPP/xamppfiles/apache2/conf/httpd.conf

A request to localhost/bitnami/ now serves the following page:

As an alternative, we can map a new URL to a new location by adding the configuration to the existing /Applications/XAMPP/xamppfiles/apache2/conf/httpd.conf file:

Mapping another URL to a new location in /Applications/XAMPP/xamppfiles/apache2/conf/httpd.conf

A request to localhost/steve/ serves the following page:

Whenever changes are made to Apache’s configuration files the Apache server has to be re-started1 for the changes to take effect. You can start, stop and restart the Apache server using the Manage Servers tab of XAMPP‘s Application Manager:

If you prefer, the Apache server can be managed from the command line in Terminal.

Mac Xampp Htdocs 場所

To stop the Apache server type:

To start the Apache server type:

To re-start1 the Apache server type:

Xampp Macbook

1 If the Apache server is running, apachectl graceful doesn’t first stop and then start the server, it simply reloads the configuration files. If the Apache server is not running, apachectl graceful attempts to start it.