Phpstudy常见使用场景及使用总结
作为一名拥抱大前端的开发人员,工作中一些模拟服务端环境的工具肯定少不了。在这些工具中,phpStudy至少在我看来是一款在window下非常不错的服务端的工具,然后由于年纪大了记性不好,每次配置使用它或者帮同事弄的时候经常还要百度,因此这里做个总结。
phpStydy官网
本文先介绍phpStudy常用的几个功能,以后有需要再补充。
1. 安装
2. 搭建文件服务器&起web前端服务(特别适合公司内部)
3. 修改端口号&同时起多个服务
4. 反向代理
安装
去官网下载完后一步步来安装到你要的目录即可,没什么难度。
搭建文件服务器&起web前端服务
在安装目录下双击phpStudy.exe,然后在主程序中找到图1.1中鼠标所在的位置
然后在打开的文件目录下找到conf目录,再进入打开vhosts.conf进行编辑。
代码1.1
<VirtualHost _default_:80>
DocumentRoot "D:\project\my_blog2\dist"
<Directory "D:\project\my_blog2\dist">
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
ProxyRequests Off
<Proxy /api>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /api http://127.0.0.1:9527/api
ProxyPassReverse /api http://127.0.0.1:9527/api
</VirtualHost>
可以将本文中的代码1.1配置覆盖默认的配置,其中"D:\project\my_blog2\dist"是我的项目目录,你可以替换成你的项目目录,然后点击phpstduy主界面的重启按钮即可。如果你的目录下没有index.html,index.html,index.php等文件,那么一个文件浏览服务(文件服务器)就搭好了,如果有上述的那些文件,则起的就是一个web服务,如下图1.2,1.3所示:
图1.2图1.3
修改端口号&同时起多个服务
先打开vhost.conf同目录下的http.conf,找到listen 80 ,这里将80改成你要的端口号,然后在vhost.conf里将代码1.1中_default_:80
中的80端口改成同样的端口号,然后重新启动即可。起多个服务只要像这样:
代码1.2
<VirtualHost _default_:8080>
#文档根目录
DocumentRoot "D:\project\my_blog2\dist"
#域名,和ip配置或者回环地址即可
ServerName 127.0.0.2
##重写rewrite配置项
<Directory "D:\project\my_blog2\dist">
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
#ProxyPass说明: 将一个远端服务器映射到本地服务器的URL空间中
#ProxyPass语法: ProxyPass [路径]!|url
#ProxyPassReverse说明:调整由反向代理服务器发送的HTTP回应头中的URL
#ProxyPassReverse语法:ProxyPassReverse [路径] url
ProxyRequests Off
<Proxy /api>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /api http://127.0.0.1:9527/api
ProxyPassReverse /api http://127.0.0.1:9527/api
</VirtualHost>
<VirtualHost 127.0.0.2:8080>
DocumentRoot "D:\tool"
ServerName 127.0.0.2
<Directory "D:\tool">
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
ProxyRequests Off
<Proxy /api>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /api http://127.0.0.1:9527/api
ProxyPassReverse /api http://127.0.0.1:9527/api
</VirtualHost>
加一行ServerName 127.0.0.2
, 这样重启phpstudy就是2个服务。起更多服务只要复制同样一段然更换回环地址即可。ps:其中#
在vhost.conf起注释的作用
反向代理
一样,如上述代码1.2所示,在重写rewrite配置项后面加上
ProxyRequests Off
<Proxy /api>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /api http://127.0.0.1:9527/api
ProxyPassReverse /api http://127.0.0.1:9527/api
这样重启phpstudy后就能反向代理请求了
其中:
ProxyPass说明: 将一个远端服务器映射到本地服务器的URL空间中
ProxyPass语法: ProxyPass [路径]!|url
ProxyPassReverse说明:调整由反向代理服务器发送的HTTP回应头中的URL
ProxyPassReverse语法:ProxyPassReverse [路径] url
PS:在代码1.3中 /api 是指将/api开头的接口地址作反向代理。空格后面是代理过去的目标地址