zoukankan      html  css  js  c++  java
  • [yii2]urlmanger

    首先配置下nginx,确保可以不使用index.php来访问

    server{
        listen      8082;
        server_name yii2.dev;
        access_log logs/yii2.access.log;
        error_log logs/yii2.error.log error;
        root /home/admin/web/nginx/html/basic/web/;
        location / {
                index  index.html index.php;
                if (!-e $request_filename){
                    rewrite ^/(.*) /index.php?r=$1 last;
                }
        }

    APP中配置config

    'urlManager' => [
                'enablePrettyUrl' => true, 
                'enableStrictParsing' => false,
                'showScriptName' => false,
                'rules' => [
                    '<module:w+>/<controller:w+>/<id:d+>' => '<module>/<controller>/view',
                    '<controller:w+>/<id:d+>' => '<controller>/view',
                ],
            ]

    其中KEY的说明

    enablePrettyUrl
    Whether to enable pretty URLs. 
    Instead of putting all parameters in the query string part of a URL,
    pretty URLs allow using path info to represent some of the parameters and can thus produce more user-friendly URLs,
    such as "/news/Yii-is-released", instead of "/index.php?r=news/view&id=100".
    enableStrictParsing
    Whether to enable strict parsing. 
    If strict parsing is enabled, the incoming requested URL must match at least one of the $rules in order to be treated as a valid request.
    Otherwise, the path info part of the request will be treated as the requested route. This property is used only when $enablePrettyUrl is true.
    showScriptName
    Whether to show entry script name in the constructed URL. Defaults to true. This property is used only if $enablePrettyUrl is true.
    rules
    The rules for creating and parsing URLs when $enablePrettyUrl is true. This property is used only if $enablePrettyUrl is true.
    Each element in the array is the configuration array for creating a single URL rule.
    The configuration will be merged with $ruleConfig first before it is used for creating the rule object.
    enableStrictParsing,showScriptName,rules 要生效必须设置enablePrettyUrl=true.
    因此要使rules配置的规则生效,需要首先设置enablePrettyUrl=true.设置完成以后按照映射规则访问。
    http://yii2.dev:8082/admin/default/1 其中Module:admin controller:default action:view id:1 符合规则:'<module:w+>/<controller:w+>/<id:d+>' => '<module>/<controller>/view',



  • 相关阅读:
    case when in sql server's stored procedure
    Hadoop-2.2.0中国文献—— MapReduce 下一代 -- 公平调度
    cocos2d-x游戏循环和日程安排
    归并+高速分拣
    【Nginx】启动过程
    IOS线程操作(3)
    Android最方便的数据库--LitePal
    Android采用Application总结一下
    POJ 2151 Check the difficulty of problems (动态规划-可能DP)
    乞讨N!到底有多少0
  • 原文地址:https://www.cnblogs.com/zaric/p/4030922.html
Copyright © 2011-2022 走看看