请问单独为目录加密后怎么调用php

coldark 2020-2-17 682

我参考加密整站的规则和网上的教程在源文那新增了配置


但在登录界面验证密码成功后出现403错误,根据我的分析应该是将login.php文件直接下载而不是作为文件执行。
宝塔是用了一个php.conf文件来让他执行login.php从而显示正常的登录界面,但appnode貌似不行。我不知道用appnode的话应该怎么做。

最新回复 (5)
  • 虚竹 2020-2-17
    引用 2
    提供下整个站点的源文配置。
  • coldark 2020-2-17
    引用 3

    1
    2
    3





    server {
        listen                     80;
        listen                     443 ssl http2;
        server_name                www.baid.cn;
        charset                    utf-8;
        ssl_certificate            /data/basic/sites/www.baidu.cn/ssl/site.crt;
        ssl_certificate_key        /data/basic/sites/www.baidu.cn/ssl/site.key;
        ssl_prefer_server_ciphers  on;
        ssl_ciphers                ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
        ssl_protocols              TLSv1 TLSv1.1 TLSv1.2;
        ssl_session_cache          shared:SSL:5m;
        ssl_session_timeout        5m;
        keepalive_timeout          75s;
        keepalive_requests         100;
        access_log                 /data/basic/sites/www.baidu.cn/log/nginx/access.log;
        error_log                  /data/basic/sites/www.baidu.cn/log/nginx/error.log;
        root                       /data/basic/sites/www.baidu.cn/www;
        set_real_ip_from           127.0.0.1;
        real_ip_header             X-Forwarded-For;
        real_ip_recursive          on;
    
        if ($scheme = http) {
            return  301 https://$host$request_uri;
        }
    
        gzip                       on;
        gzip_comp_level            6;
        gzip_min_length            1k;
        gzip_types                 text/plain text/css text/xml text/javascript text/x-component application/json application/javascript application/x-javascript application/xml application/xhtml+xml application/rss+xml application/atom+xml application/x-font-ttf application/vnd.ms-fontobject image/svg+xml image/x-icon font/opentype;
        brotli                     on;
        brotli_comp_level          6;
        brotli_min_length          1k;
        brotli_types               text/plain text/css text/xml text/javascript text/x-component application/json application/javascript application/x-javascript application/xml application/xhtml+xml application/rss+xml application/atom+xml application/x-font-ttf application/vnd.ms-fontobject image/svg+xml image/x-icon font/opentype;
        client_max_body_size       10m;
    
        location / {
            index  index.html index.htm index.php;
        
            if (!-e $request_filename) {
                rewrite  ^(.*)$ /index.php$1 last;
            }
        }
    
        location ~ ^/.+\.php(/|$) {
            include                  conf.sitemgr.d/global/conf/fastcgi_params;
            fastcgi_index            index.php;
            fastcgi_param            SCRIPT_FILENAME /data/basic/sites/www.baidu.cn/www$fastcgi_script_name;
            fastcgi_split_path_info  ^(.+\.php)(/.*)$;
            fastcgi_param            PATH_INFO $fastcgi_path_info;
            fastcgi_param            PATH_TRANSLATED $document_root$fastcgi_path_info;
            fastcgi_read_timeout     60s;
            fastcgi_pass             unix:/data/basic/sites/www.baidu.cn/php-pool/php-fpm.sock;
        }
    
        location ~* \.(js|css|png|jpg|jpeg|gif|ico|bmp|swf|eot|svg|ttf|woff|woff2)$ {
            expires         30d;
            valid_referers  none blocked server_names;
        
            if ($invalid_referer) {
                return      403;
                access_log  /data/basic/sites/www.baidu.cn/log/nginx/invalid_referer.log;
            }
        
            log_not_found   off;
        }
    }





    源文如上所示,网站为typecho,nginx的全局源文我没有改动。
    (为了安全我将以我的网站域名命名的文件夹变成了www.baidu.cn,应该不影响吧)

  • coldark 2020-2-17
    引用 4


    我用宝塔临时搭的测试网站
    www.neweden.cn/admin/
    账户密码 admin admin
    如果注释掉include enable-php-72.conf;
    就变成下载login.php了,appnode则是由于禁止下载而返回了403错误

  • 虚竹 2020-2-17
    引用 5

    在appnode自定义源文中添加以下配置:

    location /admin/ {
        auth_basic                 'AppNode HTTP Basic Authentication';
        auth_basic_user_file       /data/php72/sites/appnode.test/conf/htpasswd;
    }


    打开 http://appnode.test/admin/test.php 测试是正常的。

    如果不理解nginx源文代码的含义,请勿随意复制粘贴。

    其它面板问题请咨询其它面板厂商。

  • coldark 2020-2-17
    引用 6
       location /admin/ {
               index                 index.php;
               auth_basic            'Admin Auth';
               auth_basic_user_file  /data/basic/sites/vhost/conf/passwd;
           }





    你好,我自己测试找到了方法,typecho加密admin目录需要使用index index.php;来让网页默认加载index.php文件。
    否则将以目录形式显示

返回
发新帖