1

I have a OS X 10.6 install working, with Apache and PHP installed.

However, I cannot get mod_rewrite working. The contents of my httpd.conf is located here: http://pastie.org/828990

Does anyone know what vital thing I'm missing?

Neil Middleton
  • 412
  • 1
  • 4
  • 11
  • Can you give us any more information on what is/isn't working? Any error messages in the logs, for example? – Tim Yates Feb 17 '10 at 15:27
  • Absolutely nothing - I'm getting the index.php, and no evidence that re-writes are even present. – Neil Middleton Feb 17 '10 at 15:28
  • what is the url you type? what does your hosts file contain? What does your vhost file contain `/private/etc/apache2/extra/httpd-vhosts.conf`? – Olivier Pons Nov 23 '11 at 21:00

3 Answers3

6

You also need to update /etc/apache2/users/[name].conf where name is your user name on your computer.

If that file doesn't exist, create it. Then update it to allow mod_rewrite rules:

<Directory "/Users/[name]/Sites/">
  Options Indexes MultiViews
  AllowOverride All
  Order allow,deny
  Allow from all
</Directory>
  • It fixed my Laravel 5.4 routing issue, It was not working, now it is working. Thank you. Actually all I needed was `AllowOverride All`, but thank you for more comprehensive answer. – Yevgeniy Afanasyev Mar 05 '18 at 04:21
2

Keith Norman's answer is correct. However, in my case - a cusual home server I use for hobbying/testing - I work directly off the "base" directory of the HTTP server, rather than a /~user directory. Consequently, I needed to alter the following line in /private/etc/apache2/httpd.conf:

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   Options FileInfo AuthConfig Limit
#
AllowOverride All

Previously it stated:

AllowOverride None
Oliver Moran
  • 141
  • 4
0

You need "RewriteEngine = on" somewhere in your config, but I can't see it anywhere. This turns on RewriteRule, etc.

cEz
  • 313
  • 1
  • 6