关于php项目需要运行在nginx环境下如何进行本地共享开发

最近的一个项目是需要运行在nginx环境下才能运行,但是每次改完提交测试太麻烦了,想要在编辑器上改了代码,直接可以看到效果,同时可以和别人一起开发。但是在网上找了很久没找到相关的教程,于是自己琢磨了两天,终于可以实现了!

1、本地安装虚拟机(我用的是vmware centos7)

2、安装lnmp(关于下载安装方面的这里就不多写了,网上都可以找到) 默认目录为/home/wwwroot/default
访问虚拟机内网ip进入lnmp页(此时可以将项目放到default看能否正常运行了)

3、如果需要和别人一起实时共享开发,那么就需要用到挂载。vmware中可设置本地需要挂载的目录。
vmware -> 虚拟机 -> 设置 -> 选项 -> 共享文件夹 ->添加共享文件夹 设置名字

4、将vmvare设置的本地共享文件夹挂载到/mnt/win下
sudo vmhgfs-fuse .host:/test /mnt/win (test是我在第三步中创建的共享文件夹的名称)
挂载成功后我们可以在本地的test文件夹中创建一个test.txt 如果在虚拟机/mnt/win下多了一个test.txt那么说明挂载成功了

5、此时我们将项目文件移至/mnt/win下 这时我们需要更改nginx的默认目录,更改到/mnt/win下 进入/usr/local/nginx/conf 编辑 nginx.conf
在这里插入图片描述
将这里的root 后面的/home/wwwroot/default 换成 /mnt/win ;
此时我们重新启动nginx
/etc/init.d/nginx restart
发现网页403;
这时我们需要更改nginx的启动用户 将第一行的 user nobody更改为 user root
给/mnt最高权限 chmod -R 777 /mnt
再次保存重启 发现403没有了 但是随之而来的是 no input file specified

6、网上找了很多解决的办法
1)、 php.ini(/etc/php5/cgi/php.ini)的配置中这两项

cgi.fix_pathinfo=1 (这个是自己添加的)

doc_root=

2)、nginx配置文件/etc/nginx/sites-available/default中注意以下部分

location ~ .php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /var/www/nginx-default$fastcgi_script_name;

include fastcgi_params;

}
尝试过很多解决方法,但是都没有解决,之后纠结了好久终于找到了解决方法。

进入/usr/local/php/etc/
修改php-fpm.conf
将user=www group=www 更改为 user=root group=root
此时我们重新运行php-fpm,但是启动失败
提示:ERROR: [pool www] please specify user and group other than root
我们只需要改一下启动的命令就可以了 php-fpm -R

7、接下来我们就能够通过虚拟机的主机ip运行共享文件夹中的项目了。但是别人还没法通过你虚拟机的主机ip访问,这时我们就需要用到内网穿透。
推荐使用sunny ngrok (因为不管安装还是使用都相当简单);

8、下载sunny Ngrok linux版
注册
购买隧道
上传至linux
通过 ./sunny clientid 隧道id 启动

9、这时其他的人就能够通过sunny ngrok给的域名访问到你的项目了。

10、然后我们将共享文件夹在本地也共享出去,让别人的电脑能够直接进入到共享文件件中(网上有具体的做法)
到这里已经实现了目的(以上方法请谨慎使用,本地还好,线上服务器更改启动用户会带来大麻烦)

第一次写,如果有什么不足的地方还请大家多多指教!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值