Fecshop 2016-09-10 09:43:38 6597次浏览 14条评论 5 3 2

1.为什么用linxu作为开发环境?
经常的会遇到开发环境调试好的程序,到了线上不好用,可能是大小写,所以操作系统要一致

OnFancyEcommerce 原文链接 : Linux 作为开发环境的方法分享

  1. 线上和开发测试的所有的软件要一致,包括mysql nginx php版本。
    php版本不一致导致某些函数废弃等,可能会导致问题

因此,需要所有的环境,开发和线上一致,这样最好,在开发环境调试好的程序到了线上,一般不会出现问题。

但是linux编程比较费劲,用vim 还是不方便,但是咋们可以用远程ftp的方式加载,一般的编辑器都有远程ftp的功能,下面说的是详细。

  1. 将linxu的文件挂载到windows中 ,使用samba,linux和window文件共享 安装samba

  2. 安装samba的好处就是可以可以在window中打开linux的挂载盘,就像操作本地一样,不过也可以不用samba,用编辑器的ftp功能直接远程连接,我现在的开发环境,用的是阿里云的主机,深圳机房,直接ftp连接编程,就和本地一样,非常方便,只要有一个电脑,安装了notepad++,我就可以写代码了,下面说说我的思路:

1.安装notepad++
安装完了notepad,需要安装一个编辑器的插件,点击菜单 , 插件-->plugin Manager --> show Plugin Manager。点击后,
在弹出的窗口列表中找到NppFtp ,点击安装,完成后重启notepad++。
然后点击菜单 插件-->NppFtp-->show Nppftp Window ,就弹出来窗口了,用鼠标可以拖到左侧。

2.添加ftp ,点击那个灰色的小齿轮,点击profile settings
222.png

在弹出的窗口中点击add new 填写ftp信息就可以了,填写完成后,点击close

3.打开目录树:
如图选择后,就可以打开文件目录了
333.png
后面就可以自己编写代码,直接保存了

4.对于linux的php mysql nginx的环境的配置,可以查看

一.关于Yii2在Linux下面的配置,您可以查看:YII2开发测试环境安装配置

Linux 安装php 5.4 – yii2 环境Linux – 安装nginx – 搭配YII2环境
YII2开发环境文件上传 – 安装vsftpdlinux 安装mysql5.6
linux设置环境变量 临时设置 和 永久设置linux和window文件共享 安装samba
Linux php 扩展安装 mongo ,redis ,soap,imap,pdo_mysql,oauthYII2开发环境版本控制 – 安装SVN
yii2 – redis 配置Yii2 – Mongodb的安装和配置 mongo
觉得很赞
  • 评论于 2016-09-18 11:25 举报

    误人子弟,本地装个linux很难吗?ubuntu的桌面体验对开发来说非常友好了,各种大型的IDE都有linux版,ftp直连编程这么原始这么落后这么危险,我就问你怎么进行版本控制?改了代码还要ssh登录你的阿里云主机commit、push一下?没网了还怎么开发?每个开发人员都去买台云主机?正确的做法应该是本地安装一个linux系统(双系统or虚拟机都可以),用phpstorm这样大型的IDE开发,用git、svn进行版本控制(多用命令行),用jenkins之类的持续集成工具发布到生产环境。我不是来喷的,我是真心希望这个社区质量高一点,不过这篇文章分享的技术真的是太low了。

    8 条回复
    评论于 2016-09-18 15:36 回复

    呵呵,你好像很牛的样子啊,下面一一解说,你如果看到可以回复下。
    1.误人子弟,我没有感觉我误人子弟,我在项目中的确这样弄,在项目中,配置了一台linux,然后大家内网连接,项目中在用,无论你说low也好,至少他没有错误把?实际解决了我的问题吧?
    2.本地安装个linux并不难,安装个linux虚拟机并没有高大上,用个ubuntu,没看出来哪里牛,我想问的是,你说ftp直连变成落后,原始,这个不讨论,你说这么危险,危险在哪里?大家用内网ftp直接个内部服务器的危险在哪里?
    3.关于版本控制,在linux下面安装svn,和你的ubuntu安装个svn,不都是需要commit push吗?登录个ssh,就显得特别的low? 用个linux的svn st svm comit -m 'xxx' 就是low?

    1. 这个方式的确解决了项目的一些问题,譬如:
      1.新来了一个员工,作为负责项目的,我可以在内部开发linux上面很快的给他配置一个环境。
      2.安全方面,对于项目中的文件,一个大项目,我不希望某些员工看到某些代码,我可以在linux账户上面做权限管控
      3.在软件版本上面,对于你所的ubuntu,每个人来了,都需要搭配一套环境,在本地win下面搭配虚拟机,或者说,哎,直接安装linux,然后用docker等容器快速配置环境,但是,有的员工想上qq等一些win下面的东西,怎么解决?在ubuntu下面安装一个win?这样在项目管理过程中是不是很费劲?
      4.有的员工有个性,php,mysql安装的版本可能不一样,获取其他的一些版本的问题,有潜在的造成本地开发没有问题,线上会出现问题的情况,是否,作为技术主管,每个员工的环境,你都要自己去搭配一次,或者你说你们公司牛逼,有运维,我只能说呵呵,我们公司100多个人,运维才不管这些鸟事。
      5.你看到这里的技术low,你真心希望这个社区质量高一点,那么你多分享一些文章,希望了不去做,是屁事不管用的,在带上让你牛逼闪闪的一句话,你不是来喷的,你既然不是来喷的,那么,来这里多发布一些高质量的文章,众人拾柴火焰高,对吧?
    评论于 2016-09-18 15:38 回复

    另外,为了解决我随便找一个电脑就可以很快编程,而不需要搭配环境的需求,我用了云主机ftp直连编程的方式,
    你认为误人子弟,那么你教教我,如果让我随便拿过来一个笔记本电脑,2分钟后马上就可以写代码。求教!

    评论于 2016-09-18 15:48 回复

    我倒希望你来喷,把各个出现的问题点写详细的,喷的有水平一点,喷的详细一点,
    就你玩的那点东西,在机器安装个ubuntu,用界面开发,这是我4年前就玩过的。
    一开始,我还以为你要说你要用vim全键盘编程呢?
    牛哄哄的样子,还备注我不是来喷的,毛孩子。

    评论于 2016-09-18 16:37 回复

    呵呵1111

    评论于 2016-09-19 13:23 回复

    没什么比一份更吊的教程更有说服力了。其他全特么扯淡。

    评论于 2016-09-19 14:49 回复

    没错,@shaoxia , 发布一份更吊,更高大上,的教程,让大家学习。

    评论于 2016-09-20 09:51 回复

    支持楼主,分享是美德,说到的一些问题,实际我也遇到过;@shaoxia自己搞点东西出来让我们看看在来喷别人

    评论于 2016-10-14 11:08 回复

    @shaoxia 在内网环境,单位维护项目,足够了!再加上服务端git软件进行版本管理,可以采纳!

  • 评论于 2016-09-18 15:54 举报

    @shaoxia 拿出来你打飞机,撸毛线的时间,多研究下东西,然后来狂喷一下我这个文章。

    完事之后,不要妥协,不要气馁,我这里还有让你喷的素材,
    https://github.com/fancyecommerce
    这里最近的开源电商项目,在开发中,明年出版本,找到软肋,找到不好的地方,欢迎狂喷,我也有机会开开视野,学习学习。
    注意:一定要详细的列出来各个点。

  • 评论于 2016-09-21 17:57 举报

    1.请就事论事,别扯什么打飞机、撸毛线,这会让我怀疑你的其他方面也low.
    2.如果你认为你的方法很高大上,请你去看一下怎么用vagrant分发开发环境.
    3.你的开发环境是统一了,但是没有隔离.
    4.再次声明一下,我没有喷.

    5 条回复
    评论于 2016-09-22 15:34 回复

    呵呵呵呵额呵呵

    评论于 2016-09-22 15:42 回复

    原来你是玩了下vagrant ,就感觉自己很牛,呵呵,过几天出个vagrant 搞 yii2教程

    多大点事,弄的你这个歪嘴和尚叨逼叨的。

    注解:
    vagrant 这个玩意不是没有了解过, yii2也有一些支持, 看这里:https://github.com/yiisoft/yii2-app-advanced/tree/master/vagrant

    我分享的是我目前的一种方法,解决我现在的问题,我不需要做隔离,这难道也是误人子弟?

    你没有喷,你有你的声明,在我看来,你是天生嘴贱,后天不足。

    就事论事没错,误人子弟在哪里?各有个的方法,各有各的路子,用samba 挂载内网linux磁盘到window ,用编辑器直接加载, 或者直接用编辑器加载。

    就这种解决问题的思路,分享出来,让你怀疑这个社区很低端,和你真的不是在一个维度,孩子,你还是回火星吧。地球不适合你

    评论于 2016-09-22 21:10 回复

    小哥,配置vagrant的教程,1个小时写出来了,
    YiiChina地址: http://www.yiichina.com/tutorial/979
    csdn地址: http://blog.csdn.net/terry_water/article/details/52624854
    FancyEcommerce地址: http://www.fancyecommerce.com/2016/09/22/vagrant-下载部署linux环境/

    现在感觉YiiChina社区高大上了吗? 歪嘴和尚叨叨叨 @shaoxia

    评论于 2016-10-14 11:05 回复

    挺好的,收藏了,也可以看看容器引擎,比如docker!

    评论于 2016-10-14 14:01 回复


    vagrant是快速开发环境用的,vagrant 可以管理虚拟机。
    docker是线上快速部署分布式的。

    觉得很赞
  • 评论于 2016-09-22 10:56 举报

    对于我这样的新手,肯定是绝逼的好东西、在终端窗口下,linux 项目结构 始终不是很清晰 ,有这样的直连 插件、博主能发掘出来,实在是幸事一件,目录结构一览无余。 不过这样的工具用多了,对linux 操作与深入理解linux设计思想什么的会有一定影响,也会更加依赖windows 这个玩意儿。。就像dota 打imba 打多了dota 本身水平就下降了。工具有利有弊。就看使用者怎么权衡。
    要想深入linux 硬头皮字符界面,要想轻松,找各种插件。不过随着使用linux时间堆积,我想终究要熟练掌握字符界面吧。windows中的插件只是新手过度到大牛的阶段性东西。
    作为新手的第一感觉。绝逼不喷 ,哈哈。

  • 评论于 2016-09-22 21:13 举报

    文章不能修改了,鉴于歪嘴和尚 @shaoxia 说我误人子弟,用vagrant 才不会误人子弟,整理了一份安装vagrant的图文教程,地址如下:

    YiiChina地址: http://www.yiichina.com/tutorial/979
    csdn地址: http://blog.csdn.net/terry_water/article/details/52624854
    FancyEcommerce地址: http://www.fancyecommerce.com/2016/09/22/vagrant-下载部署linux环境/

    不要在冒出来一个人说用vagrant太低端,太误人子弟,用docker才高端,有的话,自己去安装整理教程。

    1 条回复
    评论于 2016-09-23 08:59 回复

    getYii的一篇别人的关于vagrant的 : https://getyii.com/topic/617

  • 评论于 2016-09-28 10:30 举报

    支持楼主!发文才是王道

    觉得很赞
  • 评论于 2016-10-04 09:26 举报

    这样多人同时操作一个项目,不会出问题么?

    1 条回复
    评论于 2016-10-07 08:56 回复

    每个开发人员,都是独立的文件夹,每个文件夹,对应一个linux 账户,
    然后他们都是相同的mysql mongodb redis 等。
    提交代码,都是在各自的文件夹下面用自己的linux 账户, 甲的linux 账户只能操作甲的文件夹,进行read和write
    但是甲没有权限write乙的文件夹。
    因此不会出问题,我用这种方式来管理项目2年多了,总体还可以。

  • 评论于 2016-10-14 11:03 举报

    很多人乱喷什么,乱装逼! 能够分享就是好样子的! 有什么资格在这里诋毁人家!

    不要用自己感觉的高大上技术在这里看不起本人,先进的技术多了去了!

  • 评论于 2016-10-20 11:25 举报

    文章还不错,尤其是外链。其实赞同shaoxia的说法,ubuntu开发就已经够用了。我是直接用sublime。感觉很不错

  • 评论于 2016-12-22 09:17 举报

    最后,推荐一下我的Fecshop ,开源商城,github地址:https://github.com/fancyecommerce/yii2_fecshop

    演示地址:http://fecshop.appfront.fancyecommerce.com/

    截止到2016-11-12号,产品,分类,首页,评论,用户中心,搜索,多语言,多货币 等功能已经做完,除了购物车和支付部分,其他的基本都已经完成,关注fecshop的 在等2-3个月,也就是明年2,3月份,版本已经就可以出来,2017年4,5月份在把手机web 做一下,预计到明年5月份,后台,pc前台,手机web前台 ,命令控制台 这几个入口 基本可以完善,多谢大家关注和你们的Star,谢谢,我会坚持把他写好。

    作者QQ:2358269014

  • 评论于 2017-01-04 14:34 举报

    建议楼主有些页面用ajax 体验要好点 刷新页面总感觉体验不是很好

    1 条回复
    评论于 2017-01-04 17:07 回复

    ajax 对seo不友好的

  • 评论于 2017-09-28 10:43 举报

    评论比文章精彩

  • 评论于 2018-09-13 17:21 举报

    真的在,误人子弟,而且人品一般

    1 条回复
    评论于 2018-10-10 14:56 回复

    摆出来论点的同时,拿出来你的论据

    觉得很赞
  • 评论于 2018-11-14 12:19 举报

    docker 部署,也有一个例子: https://github.com/fecshop/yii2_fecshop_docker

    无论对这篇文章做什么样子的评价,需要带上详细的论据。

您需要登录后才可以评论。登录 | 立即注册