wanmin444 发表于 2017-12-22 12:45:04

nginx 隐藏 index.php

  使用情景如下:
  在访问 http://php.cc/Att/AttList 的时候、跳转到 http://php.cc/index.php/Att/AttList ;
  也就是开启重写功能;
  在nginx配置文件nginx.conf中添加:
  location / {
  if ( !e $request_filename ) {
  rewrite ^/(.*)$ /index.php/$1 last;
  }
  }
  如果项目入口文件是在一个子目录里面,则如下:
  location / {
  if ( !e $request_filename ) {
  rewrite ^/目录/(.*)$ /目录/index.php/$1 last;
  }
  }
  切记:不可以出现两个location / {}、否则nginx服务器将启动不了;
  我的配置文件如下:
  server {
  listen       80;
  server_namewww.abcphp.cc abcphp.cc;
  root   "D:/abc/php";
  location / {
  if (!-e $request_filename) {
  rewrite ^/(.*)$ /index.php?$1 last;
  }
  indexindex.html index.htm index.php;
  autoindexon;
  }      
  location ~ \.php(.*)$ {
  fastcgi_pass   127.0.0.1:9000;
  fastcgi_indexindex.php;
  fastcgi_split_path_info^((?U).+\.php)(/?.+)$;
  fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;
  fastcgi_paramPATH_INFO$fastcgi_path_info;
  fastcgi_paramPATH_TRANSLATED$document_root$fastcgi_path_info;
  include      fastcgi_params;
  }
  }
  其中:
  autoindex on;是打开nginx的浏览目录的功能;
  原文地址:https://mp.weixin.qq.com/s/ltd3LlZn4vpq1vxCRqSaQQ
页: [1]
查看完整版本: nginx 隐藏 index.php