Version 85 (modified by magill@…, 10 years ago) (diff) |
---|
These installation instructions are written for the following versions:
- Apache 2.2.* - See: howto/Apache2 for instructions on installation of Apache2
- MySQL 5.6.* - See: howto/MySQL for instructions on installation ofMySQL
- PHP 5.6.* - See: howto/PhP? for instructions on instalation of PhP
Simplified sequence:
Install Apache Install MySQL Install PhP Modify Apache Configuration to support MySQL and PhP.
Integrate PhP with Apache
If this is your first install, you need to enable php56-apache2handler in your web server.
To enable the php56-apache2handler, run:
Register PHP with Apache
cd /opt/local/apache2/modules sudo /opt/local/apache2/bin/apxs -a -e -n "php5" mod_php56.so
This should return the message:
[activating module `php5' in /opt/local/apache2/conf/httpd.conf]
Update Apache’s httpd.conf
- /opt/local/apache2/conf/httpd.conf - file to enhance the "DirectoryIndex" directive to include additional "index" files. Search for:
DirectoryIndex index.html
and change it this way:
DirectoryIndex index.php index.html
Verify that at the end of the httpd.conf
file the following lines exist so that Apache includes the mod_php "AddType" configurations
# Include PHP configurations Include conf/extra/mod_php56.conf
Verify that in the Dynamic Shared Object (DSO) Support section the following have been added.
# Load the PHP module LoadModule php5_module modules/mod_php56.so
Note: either of the above two edits are only required if the lines are not present in the httpd.conf file, as the apxs command (executed above) will add those for you.
Step 3: MySqL setup for PhP
Setup the MySQL default socket to use the MacPorts configuration (/opt/local/var/run/mysql5/mysqld.sock)
$ sudo -i # cd /opt/local/etc/php5 # cp php.ini php.ini.bak # defSock=`/opt/local/bin/mysql_config5 --socket` # cat php.ini | sed \ -e "s#pdo_mysql\.default_socket.*#pdo_mysql\.default_socket=${defSock}#" \ -e "s#mysql\.default_socket.*#mysql\.default_socket=${defSock}#" \ -e "s#mysqli\.default_socket.*#mysqli\.default_socket=${defSock}#" > tmp.ini # grep default_socket tmp.ini # Check it! # mv tmp.ini php.ini # exit # OR rm php.ini.bak && exit
If you installed php5 with the +pear variant you should also:
cd /opt/local/etc/php5 sudo cp pear.conf.sample pear.conf
Restart Apache so that your changes take effect
sudo port unload apache2 sudo port load apache2
Step 4: Craete phpinfo
This is used to test the configuration after you have integrated it with Apache and MySQL.
Create a file named phpinfo.php
that contains the following three lines
<?php phpinfo(); ?>
and place it in your Apache "DocumentRoot
" directory (nominally: "/opt/local/apache2/htdocs
") or your own user "Sites
" directory if you activated user directories as specified above.
Point your browser to http://localhost/phpinfo.php (or http://localhost/~username/phpinfo.php as applicable) and verify that the correct version of PHP is active (v5.6.4 as of this writing) and that MySQL support is active (you may want to search the page for "mysql
").
Note that this file needs to be readable and executable.
- Remember to return to howto/PhP? to complete the PhP installation.