欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Vagrant进阶:搭建简易Python,PHP开发环境

程序员文章站 2024-02-05 10:35:34
...
至于怎么安装Vagrant,Python,PHP,本文就不讲解了。

本文主要讲解以本地作为开发环境,写完代码能直接自动同步到虚拟机(测试环境),提高测试开发效率。


其中为了测试方便,Python和PHP都用内置的Web Server,而不搭建Nginx或者Apache。


用Python和PHP的内置Web Server的做法只适合开发测试环境,不适合生产环境。


1.首先需要对Vagrant环境进行配置。编辑Vagrant文件,如下,去掉注释。

config.vm.network :forwarded_port, guest: 3000, host: 8080


这样就可以通过宿主机8080端口访问到虚拟机上得3000端口。这步解决了在本地进行访问测试。而不需要跑到虚拟机里测试。


2.本地代码怎么自动同步到测试环境,同样修改Vagrant文件。如下。

config.vm.synced_folder "./data", "/vagrant"


其中第一个参数是宿主机文件夹,存放本地代码,第二个参数是虚拟机对应的目录,当本地data目录有更新时,vagrant目录就会同步。是不是很方便啊。


宿主机data目录结构如下:

localhost:data angel$ ll -R

total 0

drwxr-xr-x 3 angel staff 102 4 28 18:51 phpTest

drwxr-xr-x 3 angel staff 102 4 28 19:52 pythonTest


./phpTest:

total 8

-rw-r--r-- 1 angel staff 192 4 28 18:51 router.php


./pythonTest:

total 8

-rw-r--r-- 1 angel staff 88 4 28 19:36 index.html



虚拟机上vagrnt上的目录结构如下:

[vagrant@localhost vagrant]$ ll -R

.:

total 0

drwxr-xr-x 1 vagrant vagrant 102 Apr 28 11:51 phpTest

drwxr-xr-x 1 vagrant vagrant 102 Apr 28 12:52 pythonTest


./phpTest:

total 4

-rw-r--r-- 1 vagrant vagrant 192 Apr 28 11:51 router.php


./pythonTest:

total 4

-rw-r--r-- 1 vagrant vagrant 88 Apr 28 12:36 index.html


发现没有,是不是一模一样啊,全自动的哦, 是不是很方便啊。


3.启动Python自带Web Server

在虚拟机上的pythonTest目录启动如下命令:

[vagrant@localhost pythonTest]$ python -m SimpleHTTPServer 3000

Serving HTTP on 0.0.0.0 port 3000 ...


在宿主机浏览器上输入http://localhost:8080,就可以看到,

Welcome to Python 


这样简易的python环境就搭建好了。


4.启动php自带的web Server

在虚拟机上得phpTest目录下启动如下命令

[vagrant@localhost phpTest]$ php -S 0.0.0.0:3000 router.php

PHP 5.5.11 Development Server started at Mon Apr 28 13:37:19 2014

Listening on http://0.0.0.0:3000

Document root is /vagrant/phpTest


在宿主机浏览器上输入http://localhost:8080,就可以看到,


Welcome to PHP

这样简易的PHP环境就搭建好了。

看官注意了,php启动内置Web Server,想要远程访问,host必须是 0.0.0.0, 本人就因为开始用localhost而报错,调试了一下午.