Tag Archives: HTTP

PHPStorm配置Debugger模式

开发环境:

MacOS+PHPStorm

Httpd2.4+PHP5.5+MySQL5.6

机器已经安装MySQL5.6、使用Mac原生PHP5.5,由于原生httpd权限各种问题,直接通过brew全新安装。

1、安装Apache Httpd 2.4

brew会自动查询依赖关系,下载相关依赖包。在下载过程中可能会遇到apr不存在但又没有下载的情况,通过

诊断过程中可能会出现某些依赖包已经安装但是并没有关联到brew中,使用

此时可能会由于权限问题,无法读写/usr/local目录,但是brew又不建议使用root用户来link,此时要修改/usr/local的所有权来解决这个问题,

一切顺利httpd24就能下载完成。

安装包默认目录

/usr/local/Cellar/http24/2.x.x/

配置文件默认目录

/usr/local/etc/apache2/2.4/

2、配置Httpd

打开/usr/local/etc/apache2/2.4/httpd.conf

配置Module:

添加 LoadModule php5_module /usr/libexec/apache2/libphp5.so

此处的libphp5.so的位置为Mac原生PHP5的mod路径,如果额外安装的话需要做相应的修改。

解注释:

LoadModule session_module libexec/mod_session.so

LoadModule rewrite_module libexec/mod_rewrite.so

以及其他要用到的mod。

修改DocumentRoot到你的工程目录下:

DocumentRoot “/Users/PhpstormProjects/xxx”

<Directory “/Users/PhpstormProjects/xxx”>

这样修改后期就可以免于映射麻烦。

brew安装的httpd默认开启8080端口,如果特殊需求,在此一并修改完成。

执行apachectl configtest检查httpd配置,成功后重启服务apachectl restart。

3、Zend Debugger配置

从Zend官网下载Zend Debugger,解压,根据PHP版本将ZendDebugger.so放置在服务器可以访问的路径下,例如/usr/local/Cellar/http24/2.x.x/。

 更改php.ini,当前使用的Mac原生PHP,此时文件位于/etc/php.ini

添加以下内容:

配置完成后重启httpd。

4、PHPStorm配置

进入运行配置窗口,选择列表中的”PHP Web Application“

点击“Server”,新建服务器,host=localhost,port=8080,后面的debugger方式选择ZendDebugger;

点击Validator remote enviromment,新建发布地址,type选择local or mounted folder,上传地址选择httpd默认路径/usr/local/var/www/htdocs,应用。

点击validate,此时会显示刚才配置的debug信息。表示配置成功。

启动httpd,点击右侧debug就可以打开调试模式了。

proxy方式连接httpd与tomcat

这几天一直在微信公众平台的开发,由于服务器验证现在仅支持80端口,本博客又架设在Httpd服务器,80端口占用无法再分配给Tomcat使用,所以就开始考虑Tomcat与Httpd的连接问题。

目前主要有三种方式,1、JK;2、http_proxy;3、ajp_proxy

JK方式是通过mod_jk来完成服务器端代码解析的一种方式,也是当前主流的连接方式,鉴于mod_jk已经停止开发,而且配置较为繁琐,遂没有使用它。

http_proxy是通过端口映射将某虚拟主机域下的部分网页解析交给监听8080端口的tomcat来处理,配置起来简单,方便使用,故采用这种方式。

请确保proxy、http_proxy的开启,键入以下命令确认

在site-available中添加额外的虚拟主机文件mysite.com,内容如下

键入以下命令让虚拟主机生效

这样在地址栏中键入

xxxxx.example.com就可以直接映射到http://114.114.114.114:8080/xxxx/上面。

 

参考链接