Install homebrew:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Open Terminal and run the following Code: sudo apachectl start
Open your browser and access http://localhost. If it says It Works, then you are set otherwise see if your apachectl has started or not.
Let's make a backup of the default Apache configuration. This will help you to cross check later what you changed or in case you want to restore the configuration to default.
cd /etc/apache2/
cp httpd.conf httpd.conf.bak
Now edit the httpd.conf with vi or any other text editor: vi httpd.conf
Now uncomment the following line (Remove #): LoadModule php5_module libexec/apache2/libphp5.so
Now Restart apache: sudo apachectl restart
To install MySQL: brew install mysql
Install brew services now: brew tap homebrew/services
Now start MySQL: brew services start mysql
Now configure MySQL : mysql_secure_installation
- Validate Password Plugin
- Remove anonymous users
- Disallow root login remotely
- Remove test database and access to it
- Reload privilege tables now - Choose yes
After finishing this up, test MySQL: mysql -uroot -p
.
It will ask you write the password you set for mysql before. Enter password and then something like this appear:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.19 Homebrew
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Now we need to ensure PHP and MySQL:
cd /var
mkdir mysql
cd mysql
ln -s /tmp/mysql.sock mysql.sock
All your sites would have URLs like http://locahost/some-site pointing to /Library/WebServer/Documents/some-site.
You may recieve 403 forbidden when you visit your local site. The Apache user(_www
) needs to have access to read, and sometimes write, your web directory.
You can either change permissions like this: chmod 755 directory/
or you can change the ownership of the directory to the apache user and group: chown -R _www:_www directory
This is optional. You can use MySQL through command line but this is a good way to administer MySQL. Download phpmyadmin from site.
cd /Library/WebServer/Documents/
tar -xvf ~/Downloads/phpMyAdmin-4.7.4-english.tar.gz
mv phpMyAdmin-4.7.4-english/ phpmyadmin
cd phpmyadmin
mv config.sample.inc.php config.inc.php
Done! Done! Done!