Windows 下如何使用 Linux 环境开发 PHP 项目!

Windows下使用Linux环境开发PHP项目!

前言

之前一直都是Windows写代码,为了更好的学习,把环境换成了Linux。通过VirtualBox的共享文件功能把代码映射到Windows上。你就可以Windows下开发,Linux运行。Linux下能够很方便的安装各种项目中需要的扩展和插件,简直舒服至极。

需要有VirtualBox的linux虚拟机

1.设置共享目录

在固定分配下添加共享目录。
图片

2.安装相关依赖包

//装载相关依赖,执行下面的命令:
yum install -y gcc gcc-devel gcc-c++ gcc-c++-devel make kernel kernel-devel

安装完后,重启虚拟机:

reboot

图片

3.虚拟机设备选项安装增强功能

图片

找到安装增强功能添加的光驱的完整路径名。在命令行输入查找:

ls -l /dev | grep cdrom

可以看到,安装增强功能的光驱在/dev目录下的名字叫做:cdrom
图片

4.将光驱挂载到/mnt目录下

然后在命令行执行:

//这会把光驱挂载到/mnt目录下。然后我们就可以通过访问/mnt来访问光驱。
 mount /dev/cdrom /mnt/

5.找到刚刚挂载的光驱

查看/mnt目录的文件。
图片

6.执行安装光驱

./VBoxLinuxAdditions.run

图片

(小插曲,没有bzip2,没有对应的命令的时候可以查查怎么安装)
图片

//直接yum安装 bzip2
yum install bzip2

7.再次执行 ./VBoxLinuxAdditions.run (时间会有点久)

如图表示安装完毕!
图片

8.挂载共享文件夹

//为了能够访问PHP文件,要给目录权限
格式:
mount -t vboxsf 共享文件夹名称(在设置页面设置的) -o rw,dmode=777,gid=GROUP_ID,uid=USER_ID 挂载的目录

//查看用户的USER_ID和GROUP_ID
id -u username
id -g username
//都给root权限挂载共享文件夹
mount -t vboxsf shares -o rw,dmode=777,gid=0,uid=0 /var/www/html

9.Windows共享目录下创建一个文件

图片
内容为:
图片

10.Linux挂载目录查看对应文件

Windows下的文件和Linux已经同步了。(惊不惊喜)
图片

11.配置一下Nginx(Apache的自己配置哦)

server {
       listen 80; # default_server;
       server_name  _;
       root   /var/www/html;
       index index.php;
       client_max_body_size 100M;
       try_files $uri $uri/ @rewrite;
       location @rewrite {
           rewrite ^/(.*)$ /index.php?_url=/$1;
      }

      # serve static files directly
      location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt)$ {
          access_log        off;
          expires           max;
      }

      location ~ \.php {
          fastcgi_pass 127.0.0.1:9000;
          fastcgi_index /index.php;

          fastcgi_split_path_info       ^(.+\.php)(/.+)$;
          fastcgi_param PATH_INFO       $fastcgi_path_info;
          fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
          include                       fastcgi_params;
      }
      location ~ /\.ht {
          deny all;
      }
  }

12.访问对应虚拟主机的ip地址

图片

(大功将成)

13.虚拟机重新启动后,发现没有权限访问了

图片

14.排查发现挂载目录不是root组了

图片

15.重新挂载就可以访问了

mount -t vboxsf shares -o rw,dmode=777,gid=0,uid=0 /var/www/html

16.设置开机自动挂载

总不能每次重启都自己手动挂载吧,开机自动挂载你值得拥有!!

修改/etc/rc.d/rc.local文件,将mount命令添加进rc.local文件

图片

17.给rc.local赋权

老司机常常飙车,没想到在阴沟里翻了车;/etc/rc.d/rc.local 是没有执行权限的;所有重启后并不会执行。
图片

//给rc.local 执行权限
chmod +x /etc/rc.d/rc.local 

图片
提示:(要注意添加的命令是否正确,不然机器就起不来了)

18.reboot重启,能够正常访问!!

转载请标明来源:https://learnku.com/articles/28108

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 4
幽弥狂

当然也可以把挂载命令放到 ~/.bashrc | ~/.zshrc 中 效果一样。。。。

4年前 评论
幽弥狂

装个 Hackintosh 吧

4年前 评论

有点麻烦,直接在win写代码,通过phpstorm ftp同步到Linux上

file

4年前 评论

@lovecn 抓重点,你的PHPstorm汉化的不完整!

4年前 评论

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