Yaf配置多模块不起作用,求助

根据网上资料配置了yaf框架的多模块功能,但配置后访问:域名/admin/user/login 显示404....
图片描述

application.ini配置如下:
图片描述

项目目录结构如下:
图片描述

php运行环境:lnmp一键安装包
哪位大神能解答下吗?什么办法都用了。。。还是访问不到Admin模块中的控制器,但默认的Index模块可以访问,yaf版本是3.0.5

补充:nginx配置文件如下:

http
    {
        include       mime.types;
        default_type  application/octet-stream;

        server_names_hash_bucket_size 128;
        client_header_buffer_size 32k;
        large_client_header_buffers 4 32k;
        client_max_body_size 50m;

        sendfile   on;
        tcp_nopush on;

        keepalive_timeout 60;

        tcp_nodelay on;

        fastcgi_connect_timeout 300;
        fastcgi_send_timeout 300;
        fastcgi_read_timeout 300;
        fastcgi_buffer_size 64k;
        fastcgi_buffers 4 64k;
        fastcgi_busy_buffers_size 128k;
        fastcgi_temp_file_write_size 256k;

        gzip on;
        gzip_min_length  1k;
        gzip_buffers     4 16k;
        gzip_http_version 1.1;
        gzip_comp_level 2;
        gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;
        gzip_vary on;
        gzip_proxied   expired no-cache no-store private auth;
        gzip_disable   "MSIE [1-6]\.";

        #limit_conn_zone $binary_remote_addr zone=perip:10m;
        ##If enable limit_conn_zone,add "limit_conn perip 10;" to server section.

        server_tokens off;
        access_log off;

server
    {
        listen 80 default_server;
        #listen [::]:80 default_server ipv6only=on;
        server_name _;
        index index.php;
        root  /home/wwwroot/default/yaf;

        #error_page   404   /404.html;

        # Deny access to PHP files in specific directory
        #location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }

        include enable-php.conf;
        
        if (!-e $request_filename) {
            rewrite ^/(.*)  /index.php/$1 last;
        }

        #location /nginx_status
        #{
        #    stub_status on;
        #    access_log   off;
        #}

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

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

        #location ~ /.well-known {
        #    allow all;
        #}

        #location ~ /\.
        #{
        #   deny all;
        #}

        access_log  /home/wwwlogs/access.log;
    }
include vhost/*.conf;
}
阅读 5k
2 个回答

重写规则有问题

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

貌似少了 $ 符号

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

看起来是nginx没有映射过去呢。这里有个Yaf最佳实践https://github.com/PuShaoWei/...

location / {
        index index.php index.html;
        try_files $uri $uri/ /index.php?$args;
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题