Nginx配置-虚拟目录(动态页面)
I_Info / / 技术杂记 | 网站相关 / 阅读量 49
经典的前情提要: 没有面板。手写nginx配置文件。前些日子整了个phpMyAdmin,但是放在网页的根路径下不太安全,要是被扫出来了绝对少不了爆破。于是就想把他放到一个子目录下,但是子目录名称又不想和物理路径的目录相同。那就必然只能整虚拟目录。

nginx的配置资料真是难找。。

Nginx实现虚拟目录无非就是用alias和rewrite。Nginx官方文档对虚拟目录(alias)的描述很少。网上的资料比较少,要么无用要么语法不够精简。但最终还是找到了解决方案。

配置文件(仅location块):

    location /x1 {
        alias /var/www/phpMyAdmin;#物理路径。
        try_files $uri $uri/ @x2;
        location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_param SCRIPT_FILENAME $request_filename;
            # With php-fpm (or other unix sockets):
            fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;#php版本有可能不同,需要调整。
            # With php-cgi (or other tcp sockets):
            #fastcgi_pass 127.0.0.1:9000;#两种连接方式均可,视实际情况。
        }
    }

    location @x2 {
        rewrite /x2/(.*)$ /x1/index.php?/$1 last;
    }

注:中间的x1为虚拟目录名,x2随意(变量名)。alias后跟物理路径。php-fpm连接需要根据php版本修改一下。

支付宝捐赠
请使用支付宝扫一扫进行捐赠
微信捐赠
请使用微信扫一扫进行赞赏
有 0 篇文章