Apache+PHP环境配置

  Technology       2015-12-11

Apache配置

1、检查Apache是否安装和配置文件路径

  1. // 查看Apache是否安装,若已安装,则会显示Apache的版本号;
  2. apachectl -v
  3. // 或者
  4. httpd -v
  5. // 查看httpd的执行路径
  6. ps aux | grep httpd
  7. // 或者
  8. whereis httpd
  9. // 查找httpd.conf文件路径
  10. // 1. 第一种方式
  11. httpd -V // 参数SERVER_CONFIG_FILE
  12. // 2. 第二种方式
  13. httpd -S // 配置了VirtualHost后有提示
  14. // 3. 第三种方式
  15. ps -ef | grep httpd // 输出中是否有 -f 选项
  16. // 4. 使用查找功能
  17. sudo find / -name "httpd.conf"

2、Apache安装

  1. // 若没有安装,执行安装操作
  2. wget http://mirrors.hust.edu.cn/apache//httpd/httpd-NN.tar.gz
  3. tar zxvf httpd-NN.tar.gz
  4. cd httpd-NN.tar.gz
  5. ./configure --prefix=PREFIX
  6. make
  7. make install
  8. // NN.tar.gz 代表是版本号
  9. // PREFIX 默认是/usr/local/apache2
  10. // 检查是否安装成功
  11. apachectl -t

3、Apache配置

这里主要说的Web目录的配置,详细配置请参考:http://httpd.apache.org/docs/

默认的目录是:/Library/WebServer/Documents/
系统级根目录默认没有开启目录列表,开启方法为:
编辑httpd.conf文件,搜索找到 Directory "/Library/WebServer/Documents",将Options FollowSymLinks Multiviews修改为:Options Indexes FollowSymLinks Multiviews
更改目录,编辑httpd.conf文件:

  1. // 1. 第一种方式
  2. // 将下面两行分别替换
  3. # DocumentRoot "/Library/WebServer/Documents"
  4. DocumentRoot "/Users/username/Sites/"
  5. # Directory "/Library/WebServer/Documents"
  6. Directory "/Users/username/Sites/"
  7. // 其中username是自己的用户名;
  8. // 2. 第二种方式
  9. // (1) 在 /etc/apache2/users/ 目录下配置 username.conf 文件;输入以下内容:
  10. <Directory "/Users/username/Sites/">
  11. Options Indexes MultiViews FollowSymLinks
  12. AllowOverride All
  13. Order allow,deny
  14. Allow from all
  15. Require all granted
  16. </Directory>
  17. // (2) 并修改此文件的权限
  18. sudo chmod 644 username.conf
  19. // (3) 编辑 /etc/apache2/extra/httpd-userdir.conf 文件,删除下列这些代码前的注释符号:
  20. Include /private/etc/apache2/users/*.conf
  21. // (4) 编辑 /etc/apache2/httpd.conf 文件,删除下列这些代码前的注释符号:
  22. Include /private/etc/apache2/extra/httpd-userdir.conf
  23. LoadModule authz_core_module libexec/apache2/mod_authz_core.so
  24. LoadModule authz_host_module libexec/apache2/mod_authz_host.so
  25. LoadModule userdir_module libexec/apache2/mod_userdir.so
  26. // 重启后生效
  27. sudo apachectl restart
  28. // 访问下面地址
  29. http://localhost/~username/

PHP

1、PHP基本配置

Mac已经预装了PHP5.5,不过在进行XDebug调试时需要安装PHP5.6,PHP5.5不含PHP-CGI;可使用php -v查看PHP版本;

要输出PHP代码,需要将httpd.conf中的LoadModule php5_module libexec/apache2/libphp5.so注释去除;Apache重启后生效;

查看PHP信息和Apache信息可使用下面代码查看:

  1. <?php phpinfo(); ?>

2、安装PHP5.6

执行以下代码:

  1. // 需要先安装brew
  2. brew install php56
  3. brew unlink php55
  4. brew link php56
  5. // 使PHP5.6生效,需将httpd.conf中的LoadModule php5_module libexec/apache2/libphp5.so 替换为:
  6. LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so

MySQL

1、检查是否安装MySQL

  1. // MySQL启动情况下可使用下面命令:
  2. ps aux | grep mysqld
  3. // 或者检查3306端口是否被占用:
  4. netstat -nat | grep LISTEN
  5. // MySQL如果没有运行的话,只有去执行搜索,可搜索MySQL的配置文件my.cnf:
  6. sudo find / -name "my.cnf"

2、安装MySQL

  1. // 下载地址:http://dev.mysql.com/downloads/mysql/
  2. // 启动MySQL:
  3. sudo /usr/local/mysql/support-files/mysql.server start
  4. // 查看MySQL的安装目录,默认为/usr/local/mysql:
  5. ps aux | grep mysqld
  6. // 查看MySQL版本
  7. /usr/local/mysql/bin/mysql -v
  8. // 添加别名,编辑~/.bash_profile,添加:
  9. export PATH="/usr/local/mysql/bin:$PATH"
  10. // 使别名生效:
  11. source ~/.bash_profile

3、配置MySQL

  1. // 修改 mysql root 账户密码:
  2. /usr/local/mysql/bin/mysqladmin -u root password 'yourpasswordhere'
  3. // MySQL的配置文件为my.cnf

XDebug

1、安装php56-xdebug

  1. brew install php56-xdebug

2、配置debug

  1. // 配置文件为:/usr/local/etc/php/5.6/conf.d/ext-xdebug.ini
  2. xdebug.remote_enable=1
  3. xdebug.remote_handler=dbgp
  4. xdebug.remote_host=127.0.0.1
  5. xdebug.remote_port=9001 //默认端口是9000
  6. xdebug.remote_connect_back=On
  7. xdebug.remote_log="/var/log/xdebug/xdebug.log" //这个目录创建一下,再改下权限
  8. xdebug.idekey = PHPSTORM

3、配置PHPStorm

具体请参考:https://www.jetbrains.com/phpstorm/help/debugging-php-applications.html

  1. // 需要设置:
  2. // 1. Interpreter
  3. // 2. Debug端口
  4. // 3. PHP Web Application

本文最后更新于2015-12-13 11:17:36