Contents
- Apache versions supported
- Help if you鈥檙e just starting out
- Important: Apache rewrites and .htaccess
- Installing or upgrading Apache on Ubuntu
- Installing Apache on CentOS
- Solving 403 (Forbidden) errors
Apache versions supported
Magento requires Apache 2.2.x or 2.4.x.
Help if you're just starting out
If you鈥檙e new to all this and need some help getting started, we suggest the following:
- Is the Magento software installed already?
- What is the software that the Magento server needs to run?
- What operating system is my server running?
- How do I log in to my Magento server using a terminal, command prompt, or SSH?
Important: Apache rewrites and .htaccess
This topic discusses how to enable Apache 2.2 rewrites and specify a setting for the distributed configuration file, .htaccess
.
Magento uses server rewrites and .htaccess
to provide directory-level instructions for Apache.
For more information, see:
Failure to enable these settings typically results in no styles displaying on your storefront or Admin.
Verify the Apache version
To verify the Apache version you鈥檙e currently running, enter:
apache2 -v
The result displays similar to the following:
Server version: Apache/2.2.22 (Ubuntu)
Server built: Jul 22 2014 14:35:32
- If Apache is not installed, see:
- If Apache 2.2 is installed on Ubuntu 12 and you want to use PHP 5.6, see the next section
Installing or upgrading Apache on Ubuntu
The following sections discusses how to install or upgrade Apache:
- Install Apache
- Upgrade to Apache 2.4 on Ubuntu 12 to use PHP 5.6
Installing Apache on Ubuntu 14 or Ubuntu 12
To install the default version of Apache (Ubuntu 14鈥擜pache 2.4, Ubuntu 12鈥擜pache 2.2):
-
Install Apache
apt-get -y install apache2
-
Verify the installation.
apache2 -v
The result displays similar to the following:
Server version: Apache/2.2.22 (Ubuntu) Server built: Jul 22 2014 14:35:32
-
Enable rewrites and
.htaccess
:
Enable rewrites and .htaccess for Apache 2.4
Use this section to enable Apache 2.4 rewrites and specify a setting for the distributed configuration file, .htaccess
Magento uses server rewrites and .htaccess
to provide directory-level instructions for Apache.
Failure to enable these settings typically results in no styles displaying on your storefront or Admin.
- To enable the Apache rewrite module, enter the following command:
a2enmod rewrite
- To enable Magento to use the distributed configuration file
.htaccess
see the guidelines in the Apache 2.4 documentation.
Note that in Apache 2.4, the server's default site configuration file is/etc/apache2/sites-available/000-default.conf
For example, you can add the following to the end of000-default.conf
:<Directory "/var/www/html"> AllowOverride <value from Apache site> </Directory>
- Restart Apache:
service apache2 restart
In some cases, additional parameters might be required. For more information, see the Apache 2.4 documentation.
- If you upgraded from an earlier Apache version, first look for
<Directory "/var/www/html">
or<Directory "/var/www">
in000-default.conf
. - You must change the value of
AllowOverride
in the directive for the directory to which you expect to install the Magento software. For example, to install in the web server docroot, edit the directive in<Directory /var/www>
.
Next steps
- Solving 403 (Forbidden) errors
- Continue with the next prerequisite (PHP Ubuntu)
- Determine your installation or upgrade path
Enable rewrites and .htaccess for Apache 2.2
Use this section to enable Apache 2.2 rewrites and specify a setting for the distributed configuration file, .htaccess
Magento uses server rewrites and .htaccess
to provide directory-level instructions for Apache.
Failure to enable these settings typically results in no styles displaying on your storefront or Admin.
-
Open the following file for editing.
- Ubuntu:
vim /etc/apache2/sites-available/default
- CentOS:
vim /etc/httpd/conf/httpd.conf
- Ubuntu:
-
Locate the block that starts with:
- Ubuntu 12:
<Directory /var/www/>
- Ubuntu 14 or CentOS:
<Directory /var/www/html>
- Ubuntu 12:
-
Change the value of
AllowOverride
to<value from Apache site>
.An example for Ubuntu 12 follows.
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride <value from Apache site> Order allow,deny Allow from all <Directory>
-
Save the file and exit the text editor.
-
Ubuntu only</em>. Configure Apache to use the
mod_rewrite
module.cd /etc/apache2/mods-enabled ln -s ../mods-available/rewrite.load
-
-
Restart Apache.
service apache2 restart
Next steps
- Solving 403 (Forbidden) errors
- Continue with the next prerequisite (PHP Ubuntu)
- Determine your installation or upgrade path
Upgrading Apache on Ubuntu 12
To use PHP 5.6 on Ubuntu 12, you must upgrade Apache to version 2.4. (By default, Ubuntu 12 comes with Apache 2.2.)
To upgrade to Apache 2.4:
-
Add the
ppa:ondrej
repository, which has Apache 2.4:apt-get -y update apt-add-repository ppa:ondrej/apache2 apt-get -y update
-
Install Apache 2.4:
apt-get install -y apache2
If the
apt-get install
command fails because of unmet dependencies, consult a resource like http://askubuntu.com. -
Verify the installation.
apache2 -v
Messages similar to the following should display:
Server version: Apache/2.4.10 (Ubuntu) Server built: Jul 22 2014 22:46:25
-
Continue with the next section.
Enable rewrites and .htaccess for Apache 2.4
Use this section to enable Apache 2.4 rewrites and specify a setting for the distributed configuration file, .htaccess
Magento uses server rewrites and .htaccess
to provide directory-level instructions for Apache.
Failure to enable these settings typically results in no styles displaying on your storefront or Admin.
- To enable the Apache rewrite module, enter the following command:
a2enmod rewrite
- To enable Magento to use the distributed configuration file
.htaccess
see the guidelines in the Apache 2.4 documentation.
Note that in Apache 2.4, the server's default site configuration file is/etc/apache2/sites-available/000-default.conf
For example, you can add the following to the end of000-default.conf
:<Directory "/var/www/html"> AllowOverride <value from Apache site> </Directory>
- Restart Apache:
service apache2 restart
In some cases, additional parameters might be required. For more information, see the Apache 2.4 documentation.
- If you upgraded from an earlier Apache version, first look for
<Directory "/var/www/html">
or<Directory "/var/www">
in000-default.conf
. - You must change the value of
AllowOverride
in the directive for the directory to which you expect to install the Magento software. For example, to install in the web server docroot, edit the directive in<Directory /var/www>
.
Next steps
- Solving 403 (Forbidden) errors
- Continue with the next prerequisite (PHP Ubuntu)
- Determine your installation or upgrade path
Installing Apache on CentOS
Magento requires Apache use server rewrites. You must also specify the type of directives that can be used in .htaccess
, which Magento uses to specify rewrite rules.
Installing and configuring Apache is basically a three-step process: install the software, enable rewrites, and specify .htaccess
directives.
Installing Apache
-
Install Apache 2 if you haven鈥檛 already done so.
yum -y install httpd
-
Verify the installation:
httpd -v
Messages similar to the following display to confirm the installation was successful:
Server version: Apache/2.2.15 (Unix) Server built: Oct 16 2014 14:48:21
-
Continue with the next section.
Enable rewrites and .htaccess for Apache 2.2
Use this section to enable Apache 2.2 rewrites and specify a setting for the distributed configuration file, .htaccess
Magento uses server rewrites and .htaccess
to provide directory-level instructions for Apache.
Failure to enable these settings typically results in no styles displaying on your storefront or Admin.
-
Open the following file for editing.
- Ubuntu:
vim /etc/apache2/sites-available/default
- CentOS:
vim /etc/httpd/conf/httpd.conf
- Ubuntu:
-
Locate the block that starts with:
- Ubuntu 12:
<Directory /var/www/>
- Ubuntu 14 or CentOS:
<Directory /var/www/html>
- Ubuntu 12:
-
Change the value of
AllowOverride
to<value from Apache site>
.An example for Ubuntu 12 follows.
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride <value from Apache site> Order allow,deny Allow from all <Directory>
-
Save the file and exit the text editor.
-
Ubuntu only</em>. Configure Apache to use the
mod_rewrite
module.cd /etc/apache2/mods-enabled ln -s ../mods-available/rewrite.load
-
-
Restart Apache.
service apache2 restart
Next steps
- Solving 403 (Forbidden) errors
- Continue with the next prerequisite (PHP Ubuntu)
- Determine your installation or upgrade path
Solving 403 (Forbidden) errors
If you encounter 403 Forbidden errors when trying to access the Magento site, you can update your Apache configuration or your virtual host configuration to enable visitors to the site as discussed in one of the following sections:
Solving 403 Forbidden errors for Apache 2.4
To enable web site visitors to access your site, use one of the Require directives.
For example:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride <value from Apache site>
Order allow,deny
Require all granted
</Directory>
The preceding values for Order
might not work in all cases. For more information, see the Apache documentation.
Solving 403 Forbidden errors for Apache 2.2
To enable web site visitors to access your site, use the Allow directive.
For example:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride <value from Apache site>
Order allow,deny
Allow from all
</Directory>
The preceding values for Order
might not work in all cases. For more information, see the Apache documentation.
Find us on