请问 9102年了,Windows 上面开发 PHP 最好的环境应该是什么样的

用过很多一键包,像xampp这种不太方便建立虚拟主机(也许是被宝塔的面板惯坏了),但是新版的宝塔不支持家用版本,无奈尝试了wsl这种虚拟环境,结果出现了很多文件不同步,IO问题,长时间502,以及不能很好地自启动什么的。(菜是原罪),还有尝试过vm虚拟机,以及docker什么的。

应用一般会上线linux,所以希望一些伪静态等配置能够和linux同步,最大程度还原linux环境,大家一般是使用的什么环境呢?或者是什么系统在开发PHP呢?

附言 1  ·  4年前

对了 忘了说了:

还需要兼顾代码上传git的方便性 以及多人协作 考虑测试人员或者前端人员的方便连入等因素

最佳答案

使用docker 搭建所需要的环境

优点:

  • 使用docker-compose编排容器,一键 start|stop|restart 任何服务
  • yml配置文件加上不同版本的服务,可以任意切换版本
  • 保持数据的持久化,只需要加上映射目录,并且代码热更新
  • 安装扩展有 docker 方面有自带的 docker-php-ext-install,docker-php-ext-enable 命令,非常方便
  • 容器交互有 exec -it service(服务名称) /bin/bash命令,和linux下一摸一样的开发体验
  • 一次搭建多处运行,将镜像上传,使用时直接拉取运行容器指定端口,目录即可

缺点:

  • windows 下需要开启 hyper-v 虚拟功能
  • 较占内存及资源,8G是最基础配置,最好16G起步

IDE 首选大国重器 PHPstorm (墙裂推荐,jet家族出品,必属精品)
优点:

  • 基础功能不多说,自动补全,智能提示修复,go to,自定义主题等等
  • VCS 控制台功能非常强大,带有可视化面板以及修改代码高亮显示,右键可直接查看版本对比差异等
  • Run \ DeBug 配置强大,支持 单文件,文件夹以及composer autoload,远程文件等,让 PHP 调试变得触手可及
  • 内置 docker 插件,配合 docker 实时查看容器运行状态
  • 强大的终端支持,可以设置 Powshell 或者shell或者 gitbash

缺点依然是占用资源较大

目前我自用的机器是

  • windows 10 内存8G
  • docker for windows 1903,分配资源 2核2G
  • PHPstorm 1902 日常使用占用1G左右
    加上谷歌浏览器
    内存稳定在85-90%左右,体验一般

如果题主内存够大建议上 docker + PHPstorm ,简直完美

4年前 评论
讨论数量: 56

WAMP

不行?

可以试试 Laragon ,神器

4年前 评论
YangYongAn (楼主) 4年前
YangYongAn (楼主) 4年前

@Larawa 发现Laragon 重启Nginx老是重写配置文件是什么道理啊

4年前 评论
Larawa 4年前
MomentD 3年前

搞一台Linux VPS,PhpStorm自动同步代码到VPS上测试,跟生产环境一毛一样 :see_no_evil:

4年前 评论
lovecn 4年前
YangYongAn (楼主) 4年前
小李世界 4年前
诺大的院子 (作者) 4年前

不是应该用 Homestead 吗? :blush:

4年前 评论
YangYongAn (楼主) 4年前
NiceYu

安装个docker 自己做一个集成环境就好了

4年前 评论
aodaobi

不管是win 还是mac 一直都是vm虚拟机

4年前 评论
YangYongAn (楼主) 4年前
NiceYu

@vsenver 很早之前用 winphpstudy,现在都是用 docker-compose 一个文件搞定了,可以直接集合 mysql redis phpmyadmin phpredisadmin 和 各种php版本这些,比较合适简单,如果要发布线上可以打包整个镜像丢上去线上

4年前 评论
YangYongAn (楼主) 4年前
NiceYu (作者) 4年前
YangYongAn (楼主) 4年前

工具:VirturlBox+Xshell
环境:win10+sublime && 任意linux版本+(自己服务器上的生产环境)
核心要点,在Win10 下面共享一个文件夹(假设为work),然后将work目录mount到ubuntu里面,加入开机启动项即可。
挂载磁盘命令
mount -t cifs //192.168.31.175/work /work -o username=user,password=pwd,dir_mode=0777,file_mode=0777,vers=2.0

file
拒绝其它花里胡哨的套件工具什么的,相信我已经折腾过很多环境了。我这个方法是最省事情最靠谱的。
VB可以开机后台运行,暂用资源极少。

4年前 评论
YangYongAn (楼主) 4年前

目前使用laradock,虽然有些坑要踩(安装扩展),但是windows下开发还是很好用的 :stuck_out_tongue_winking_eye:

4年前 评论
YangYongAn (楼主) 4年前
circle

wsl

4年前 评论
YangYongAn (楼主) 4年前
circle (作者) 4年前
Hesunfly

使用 Homestead 或者 docker 比较好,最接近服务器环境 。

4年前 评论
YangYongAn (楼主) 4年前
Yurun

PHPStudy吧,wsl的话选择的就多了

4年前 评论
YangYongAn (楼主) 4年前
Yurun (作者) 4年前
YangYongAn (楼主) 4年前
Yurun (作者) 4年前

VirturlBox+Vagrant

4年前 评论
YangYongAn (楼主) 4年前

直接上docker 运行镜像的时候 映射目录 就行了
下次运行开机直接docker restart id
就行了 改什么都是即时的

4年前 评论
YangYongAn (楼主) 4年前
kapai (作者) 4年前
yangweijie

phpenv 不是有nginx phpcustom

4年前 评论

vm虚拟机里面装docker,在docker里面跑三个容器,php,nginx,mysql

4年前 评论
BetterToBe (作者) 4年前

都 9012 了,还用 window 开发? :joy:

4年前 评论
YangYongAn (楼主) 4年前
L学习不停 4年前

Manjaro,非常推荐!

4年前 评论
itxq

安装wsl2,在wsl2中安装docker。开发环境全部容器化。完美

4年前 评论

ubuntu子系统+宝塔

4年前 评论

使用docker 搭建所需要的环境

优点:

  • 使用docker-compose编排容器,一键 start|stop|restart 任何服务
  • yml配置文件加上不同版本的服务,可以任意切换版本
  • 保持数据的持久化,只需要加上映射目录,并且代码热更新
  • 安装扩展有 docker 方面有自带的 docker-php-ext-install,docker-php-ext-enable 命令,非常方便
  • 容器交互有 exec -it service(服务名称) /bin/bash命令,和linux下一摸一样的开发体验
  • 一次搭建多处运行,将镜像上传,使用时直接拉取运行容器指定端口,目录即可

缺点:

  • windows 下需要开启 hyper-v 虚拟功能
  • 较占内存及资源,8G是最基础配置,最好16G起步

IDE 首选大国重器 PHPstorm (墙裂推荐,jet家族出品,必属精品)
优点:

  • 基础功能不多说,自动补全,智能提示修复,go to,自定义主题等等
  • VCS 控制台功能非常强大,带有可视化面板以及修改代码高亮显示,右键可直接查看版本对比差异等
  • Run \ DeBug 配置强大,支持 单文件,文件夹以及composer autoload,远程文件等,让 PHP 调试变得触手可及
  • 内置 docker 插件,配合 docker 实时查看容器运行状态
  • 强大的终端支持,可以设置 Powshell 或者shell或者 gitbash

缺点依然是占用资源较大

目前我自用的机器是

  • windows 10 内存8G
  • docker for windows 1903,分配资源 2核2G
  • PHPstorm 1902 日常使用占用1G左右
    加上谷歌浏览器
    内存稳定在85-90%左右,体验一般

如果题主内存够大建议上 docker + PHPstorm ,简直完美

4年前 评论

windows php环境使用docker+wsl(ubuntu子系统)最好,终端使用hyper,使用了半年没有任何问题。有问题可以私聊

4年前 评论

windows + vmware + docker.虚拟机可以备份克隆,换机直接导入就可以.windows娱乐,vmware开发

2年前 评论
YangYongAn (楼主) 2年前

有个dns代理的+nginx+php+mysql优雅的一批

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!