• LNMP 支持路由重写


    server
        {
            listen 80;
            #listen [::]:80;
            server_name www.xxx.com;
            index index.html index.htm index.php;
            root  /www/xxx;

            location / {
                if (!-f $request_filename) {
                    rewrite ^/(.*)$ /index.php/$1 last;
                    break;
                }
            }

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

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

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

            location ~ /.
            {
                deny all;
            }

            access_log  /mnt/log/www.xxx.com.access.log;
        }

    ##防跨目录设置##

    LNMP 1.1及之前的版本使用php.ini里面,open_basedir设置

    LNMP 1.2及更高版本防跨目录功能使用.user.ini,该文件在网站根目录下,可以修改.user.ini 里面的open_basedir的值来设置限制访问的目录或删除来移除防跨目录的设置。

    .user.ini文件无法直接修改,如要修或删除需要先执行:chattr -i /网站目录/.user.ini

    删除的话rm -f /网站目录/.user.ini 就可以。
    修改完成后再执行:chattr +i /网站目录/.user.ini
    .user.ini不需要重启一般5分钟左右生效,也可以重启一下php-fpm立即生效。
    如果要更改网站目录必须要按上述方法修改防跨目录的设置,否则肯定报错!!

    LNMP 1.4上如果不想用防跨目录或者修改.user.ini的防跨目录的目录还需要将 /usr/local/nginx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在该行行前添加 # 或删除改行,需要重启nginx。

    LNMP 1.4上也可以直接使用lnmp1.4/tools/ 目录下的 ./remove_open_basedir_restriction.sh 进行移除。
    在Thinkphp、codeigniter、Laravel等框架下,网站目录一般是在public下,但是public下的程序要跨目录调用public上级目录下的文件,因为LNMP默认是不允许跨目录访问的,所以都是必须要将防跨目录访问的设置去掉,有时候这些框架类的程序提示500错误也可能是这个问题引起的。


    LNMPA或LAMP 模式1.2版本以上的防跨目录的设置使用的对应apache虚拟主机配置文件(lnmp管理工具添加的话文件是 /usr/local/apache/conf/vhost/域名.conf )里的php_admin_value open_basedir参数进行设置。如果不需要设置可以在前面加 # 进行注释,或自行修改目录的限制。
    重启apache生效。

  • 相关阅读:
    Linux(centos)如何安装Zend Optimizer Zend Guard Loader
    如何离线下载Chrome的安装包
    如何解决""No boot device available(无可用的引导设备)”错误
    mysql 存储及查询亿级数据
    mysql explain用法和结果的含义
    mysqldump参数详细说明(转)
    MP4文件格式的解析,以及MP4文件的分割算法
    Windows下搭建go语言开发环境 以及 开发IDE (附下载链接)
    mysql 命令备份还原数据库
    生成文件MD5
  • 原文地址:https://www.cnblogs.com/lbnnbs/p/8884173.html
Copyright © 2020-2023  润新知