LNMP环境下,部署laravel

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29238009/article/details/79087612

LNMP是之前胡乱配的,我都忘了怎么配的了,所以没有写出一篇总结,以后有时间再写一下LNMP怎么配的。
这次重点不是LNMP的配置,而是在这个环境前提下,怎么把laravel部署上去。
之前我写过一篇是LAMP部署laravel的,这个就挺简单的,但是nginx就更难理解一点,折腾了快一天了,一直卡在一个坑里,网上看的教程都没点出这点来,最后问学习交流群里面的一些前辈才帮忙解决了,觉得自己呆呆的(`゚Д゚´)ゞ。。。

先把我这个环境交代一下,你们自己配置的话就根据自己的情况看看吧,然后一些自己配置的路径也可以根据自己喜好和需要灵活配置。

我的nginx路径是:/usr/local/nginx
然后默认项目路径是:/usr/local/nginx/html
nginx配置文件路径:/usr/local/nginx/conf

  1. 现在我们先创建一个laravel项目,怎么新建我就不多说了,可以去官网看看,然后项目名字叫testproject,放在/usr/local/nginx/html里面

  2. 因为laravel在nginx里面要把根目录写在public下,所以不能沿用默认localhost的相对路径,像localhost/testproject/public只能访问到根目录,但是其他路由是访问不到的。那么我们就开一个虚拟域名给这个项目。

  3. 我们在/usr/local/nginx/conf里面新建一个vhost文件夹,然后在vhost文件夹里面新建一个testproject.power.conf,就是命名为 域名+.conf后缀的样子就可以了,然后在里面写入

server { 
listen 80;
server_name testproject.power;
location / {
root /usr/local/nginx/html/testproject/public;
index index.php index.html index.htm;
    try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ { 
root /usr/local/nginx/html/testproject/public; 
fastcgi_pass 127.0.0.1:9000; 
fastcgi_index index.php; 
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
include fastcgi_params; 
} 
} 
  1. 在/usr/local/nginx/conf里面找到nginx.conf,在nginx.conf里面找到http,一般默认就一个http,然后把
    include vhost/*.conf;
    写到http花括号里面,说明把vhost下面所有 .conf文件都包括进来了

  2. 最重要的一步,我看所有教程都没写的,就是要配置域名到host。。。。执行 vim /etc/hosts
    在hosts最后加上 127.0.0.1 testproject.power
    以前配apache的时候知道要绑host,但是nginx看到所有教程都没写这点,我就没在意了,没想到就是这个问题= =。。。

  3. 保存hosts后,执行service nginx restart重启一下服务器,然后在laravel项目里面加一个test路由,随便echo一句话,然后你访问 testproject.power/test,就能看到你要echo的那句话了~现在就说明整条路是走通了的,然后你就可以尽情修改编写你的项目了,这样laravel就能在nginx里面运行啦~

看上面的步骤,**应该**nginx在windows下也差不多,就是配虚拟域名,然后绑定hosts(windows的hosts一般在C:/WINDOWS/system32/drivers/etc),重启下nginx就能用了。

上面的配置, testproject.power就是你新laravel项目的域名了,你要建多个项目就重复上面的操作给每个项目配个域名就好了,而且这样就不会和localhost冲突,你localhost仍然可以访问到/usr/local/nginx/html里面的文件

猜你喜欢

转载自blog.csdn.net/qq_29238009/article/details/79087612