nginx + php 在linux 上部署记录

nginx + php 在linux 上部署记录

月光魔力鸭

2019-09-07 17:34 阅读 189 喜欢 0 php部署 nginx+php

nginx + php 在linux 上部署记录,记录下部署php项目的时候的经过,查了很多资料,最后才定出的这个,中间些许问题可能已经记不清楚了,趁着时间步长,赶紧回忆一下。

现在比较流行的是lnmp lnmpa lamp ,其中l 对应linux , n对应nginx , m 对应mysql ,p 对应php ,a 对应 apache .

由于意识(工作的这几年一直没接触过PHP ,都是java js的搞)还停留在好多年前,也是自己瞎折腾了一阵子才慢慢搞明白的。

关于 LNMP 应该很成熟了吧(自己瞎猜的),直接照着官网来,由于个人比较熟悉(用过) nginx ,所以直接上手了这个。

安装直接照着官网一步一步来即可,这里复制下,不用两边跑了。

wget http://soft.vpser.net/lnmp/lnmp1.6.tar.gz -cO lnmp1.6.tar.gz && tar zxf lnmp1.6.tar.gz && cd lnmp1.6 && ./install.sh lnmp

然后一直等待,过程中可能会需要输入些密码之类的,自己记住就好。 安装完成后会有一个整体的提示,个人建议最好是拍照留存,后续有问题需要找的时候,还是比较方便的。

以上是关于安装,安装后如何跑起php项目,并能够访问,这里主要写下关于nginx的配置。

server
    {
        listen 80;
        #listen [::]:80 default_server ipv6only=on;
        server_name xxx.xxx.com;
        index index.html index.htm index.php default.html default.htm default.php;
        root  /mnt/adcrm;

        #error_page   404   /404.html;

        location ~* ^/(public|install|application|thinkphp|template|plugins|backup|extend|runtime|topthink|vendor)/.*\.(php|php5)$
        {
          deny all;
        }

        location / {
            index  index.htm index.html index.php;  
            if (!-e $request_filename){
                #地址作为将参数rewrite到index.php上。tp框架接收s参数为controller和action,不少框架都利用这种方式来实现伪pathinfo模式(pathinfo为php功能,nginx并不支持)
                rewrite ^/(.*)$ /index.php?s=$1 last;
                break;
            }
        }


    location ~.*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
        root  /mnt/adcrm;
            #expires 30d;
        }

     # js css缓存一小时
       location ~.*\.(js|css)$ {
           root  /mnt/adcrm;
           #expires 1h;
       }

        #error_page   404   /404.html;
        include enable-php.conf;

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }

        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }

        location ~ /\.
        {
            deny all;
        }

        access_log  /home/wwwlogs/access.log;
    }

OK,记录到此,都是浅尝辄止,主要是帮朋友一个忙,所以也并没有多多去研究,都是瞎捣鼓。

转载请注明出处: https://chrunlee.cn/article/linux-nginx-php-install.html


感谢支持!

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
这两天换了电脑,装上了PowerShell,由于有很多nodejs的小工具,但是发现在powershell中都一直报错。。蓝瘦
使用mysql来进行更新大量数据的时候,报错:The total number of locks exceeds the lock table size 。 原因是全局设置的 innodb_buffer_pool_size 为 8M ,调整大一些就可以了。
最近入手了华为鲲鹏服务器... 作为一个菜鸡前端,去部署服务器,亚历山大.. 即便是各种抄抄抄也无济于事.
简单记录下openssl 编译x64 以及在visual studio 中附加openssl库的过程,过程很简单,不过不是我的专业,所以比较耗时.. 很多小细节的问题。
最近一直在了解关于个人支付的问题。由于之前一直想实现个人支付,但是目前微信和支付宝的支付接口都需要企业或个体户资质,导致没办法实现,无奈只能走向这个道路。 说是免签,实际上就是拿到收款金额来做些事情。
关于自动签到,之前也有过,感觉写过好多次了,有可能也重复了,不过这次是通过puppeteer来实现的,相对于之前的phantomjs 或 casperjs 或 request 等最起码会更简单些,也不用安装这么多稀奇古怪的东西。
系统为:win10 家庭中文版,安装vmware10 ,总是报错提示:this product may ........ hyper-v .