当前位置:首页 > CMS教程 > 其它CMS > 列表

yii2 url重写并隐藏index.php方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-11-02 10:33:17 浏览: 评论:0 

这篇文章主要介绍了yii2 url重写并隐藏index.php方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考,一起跟随小编过来看看吧。

第一步:不管是 apache 还是 nginx ,想要隐藏 Index.php 文件,需要打开 urlManager 组件的配置,在进行后续的操作

  1. ‘components' => [ 
  2.  'urlManager' => [ 
  3.   'enablePrettyUrl' => true,//开启美化URL 
  4.   'showScriptName' => false,//是否显示脚本名称:index.php,同时应该配置 Web 服务 
  5.   'enableStrictParsing' => false,//是否开启严格解析 
  6.   //'suffix' => '.html',//生成带 .html 后缀的 URL 
  7.   'rules' => [ 
  8.       
  9.    ], 
  10.   ], 
  11. ], 

第二步 :

nginx 下 :

配置文件 nginx.conf 内容如下:

  1. user centos; 
  2. worker_processes 4; 
  3.    
  4. error_log logs/error.log; 
  5.    
  6. pid    logs/nginx.pid; 
  7.    
  8.    
  9. events { 
  10.   worker_connections 10240; 
  11.    
  12.    
  13. http { 
  14.   include    mime.types; 
  15.   default_type application/octet-stream; 
  16.    
  17.   log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 
  18.            '$status $body_bytes_sent "$http_referer" ' 
  19.            '"$http_user_agent" "$http_x_forwarded_for"'
  20.    
  21.   log_format log_json '{ "@timestamp": "$time_local", ' 
  22.             '"remote_addr": "$remote_addr", ' 
  23.             '"referer": "$http_referer", ' 
  24.             '"request": "$request", ' 
  25.             '"status": $status, ' 
  26.             '"bytes": $body_bytes_sent, ' 
  27.             '"agent": "$http_user_agent", ' 
  28.             '"x_forwarded": "$http_x_forwarded_for", ' 
  29.             '"up_addr": "$upstream_addr",' 
  30.             '"up_host": "$upstream_http_host",' 
  31.             '"up_resp_time": "$upstream_response_time",' 
  32.             '"request_time": "$request_time"' 
  33.             ' }'
  34.    
  35.    
  36.   access_log logs/access.log; 
  37.    
  38.   sendfile    on; 
  39.   #tcp_nopush   on; 
  40.    
  41.   #keepalive_timeout 0; 
  42.   keepalive_timeout 200; 
  43.     client_max_body_size 200M; 
  44.   gzip on; 
  45.    
  46.     include vhost/*.conf; 

项目域名的配置整体是放在 vhost 这个目录下面,改目录下其中一个文件的内容

  1. server { 
  2.     listen 80; 
  3.     server_name   域名; 
  4.    
  5.     # 项目 index.php 地址 
  6.     root /home/centos/www/youdai-api/bird/web; 
  7.    
  8.     access_log logs/youdaiApi.access.log log_json; 
  9.     error_log logs/youdaiApi.error.log; 
  10.    
  11.     location / { 
  12.         try_files $uri $uri/ /index.php?$args
  13.         index  index.php; 
  14.     } 
  15.    
  16.     location ~ \.php$ { 
  17.         fastcgi_pass 127.0.0.1:9000; 
  18.         fastcgi_index index.php; 
  19.         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name
  20.         include fastcgi_params; 
  21.     } 
  22.    
  23.     location ~ /\.ht { 
  24.         deny all; 
  25.     } 

apche 下:伪静态配置

入口文件的同级目录下,放置 .htaccess 文件

内容如下 :

  1. RewriteEngine on 
  2. RewriteCond %{REQUEST_FILENAME} !-d 
  3. RewriteCond %{REQUEST_FILENAME} !-f 
  4. RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]

Tags: yii2隐藏index php

分享到: