vagrant初次Web项目配置

之前已经配置好了vagrant,接着就要把项目配置到虚拟机里。

使用工具:
1. vagrant_1.7.4
2. VirtualBox-5.0.14
3. putty_V0.63
4. 虚拟机 centos 64位版本

项目框架:
1. Laravel 5.0

项目配置

下载Laravel 5.0
下载Laravel5.0,具体方法见Laravel 安装指南。

配置
1. 将下载好的框架放入与虚拟机同步的文件夹下(可以直接下载到此处),并且设好项目名字,后面会用。
2. 修改项目配置文件。
之前因为虚拟机里的项目路径在/www文件路径下,/www处于vhost文件下 。现在vhost文件夹下配置项目配置文件

# ls 是linux的展开当前文件夹指令
 cd vhost 
 ls 

展开vhost文件,已经有两个项目配置文件,同时发现并没有/www文件夹(后面再说)
这里写图片描述
myforum、resume是自己配置的,app、manage是自己使用的box所带的别人的。

#运行指令 复制app.iyz.com.conf文件的内容到XXX.XXX.com.conf里
cp app.iyz.com.conf XXX.XXX.com.conf
#使用指令 打开复制生成的文件
vi XXX.XXX.com.conf
#然后按i ,开始修改文件


只需修改如图里的部分即可,然后按Esc退出修改,输入 :x ,回车保存退出文件。

运行指令cd www无效

没接触过的都会这种犯错,我自己就是

此处应运行指令

cd /www
ls 

这里写图片描述
这里是已配置的两个项目。

完成后开始配置hosts(C:\WINDOWS\system32\drivers\etc)文件。

在此处输入vagrantfile文件中配置的ip地址,后面的服务名要和前面配置文件中修改后的XXX.XXX.com一样。

完成保存后,重启虚拟机。在浏览器里输入XXX.XXX.com即可访问。
vagrant初次Web项目配置_第1张图片
该页面是Laravel5的默认页面,如果出现此页面,说明配置成功。
后面就可以在本地框架里修改项目。

初次配置Web项目遇到的问题

1. 配置完成后访问被拒绝
基本我配置好后访问被拒绝都是服务器的问题
我的虚拟机里装的是nginx反向代理服务器,所以

#输入
nginx


出现以上情况,说明服务器正常启动。若没有。那就是服务器未启动。应仔细检查之前项目配置文件或者服务器配置文件中是否出现问题。
我遇到情况是:在修改项目配置文件时,手残把一个花括号删掉了,导致服务器未启动。这种情况有时候遇到能检查起来很蛋疼,但没办法。如果实在太麻烦,可复制app文件修改后重启试一试。

2 . Vagrant下共享目录静态文件(js/jpg/png等)“缓存”问题
这个问题比较蛋疼,当时遇到后整个人都不好了,开始以为是路径引起的问题,检查后并没有问题。重启大法什么都不管用,最后在网上一篇博客看到:

其实对于nginx来说,你只需要修改配置文件(nginx.conf)中的一行重启就能简单的解决这个问题:
sendfile off;
找到 nginx.conf ,把里面的 “sendfile on” 修改为 “sendfile off”。
当然,如果你使用Apache也可能遇到类似的问题,那么同样也有类似的配置需要修改:
EnableSendfile off

nginx.conf文件位置: cd /etc/nginx

原博客地址:https://blog.smdcn.net/article/1325.html 非常感谢博主!

3. 访问出现file not found
这个问题当时遇到时感觉不可思议,因为之前是可以正常为访问的,怎么都搞不定。查找配置这些也是正常的,后经学姐提醒,我又去/www文件夹下,发现之前配置的项目全都找不到了,顿时惊了!所以这应该是本地与虚拟机之间文件同步的问题。
试了几次才发现,通过vagrant启动虚拟机,文件同步正常。而通过virtualbox启动虚拟机就无法同步。查了一下,virtualbox要同步共享文件需要安装增强包,然后进行系列配置才可以,而我出现file not found是因为直接从virtualbox启动虚拟机而没有提前配置。而从vagrant启动虚拟机,vagrantfile的配置文件里我们提前已经设好的配置会使虚拟机自动进行同步,所以同步正常。

小结

初学者总归遇到一些感觉困难的问题,慢慢来吧,会有办法解决的。

更正

最开始

你可能感兴趣的:(vagrant)