如何去掉index.php目录

 我来答
运动一圈
2016-07-11 · TA获得超过949个赞
知道大有可为答主
回答量:964
采纳率:92%
帮助的人:485万
展开全部
apache去掉index.php
1.编辑conf/httpd.conf配置文件
#LoadModule rewrite_module modules/mod_rewrite.so 把该行前的#去掉
同时对应Directory下要配置 AllowOverride All
2.在 CI 根目录下(即在index.php,system的同级目录下)新建立一个配置文件,命名为: .htaccess 内容如下:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|robots\.txt)
RewriteRule ^(.*)$ index.php/$1
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(application|modules|plugins|system|themes) index.php/$1 [L]
3.把system/application/config/config.php 中$config['index_page'] = "index.php";改为$config['index_page'] = "";
4.重启apache

2
nginx去掉index.php
1.编辑nginx.conf文件
vi /usr/local/xxxxx/nginx/conf/nginx.conf
#nginx去掉index.php
location / {
rewrite ^/$ /index.php last;
#防止某些文件夹被直接访问
rewrite ^/(?!index\.php|robots\.txt|uploadedImages|resource|images|js|css|styles|static)(.*)$ /index.php/$1 last;
}
2.config/config.php下配置$config['index_page'] = '';
3..重启nginx
3
去掉默认的index方法,如图的URL配置如:
config/routes.php,配置$route['catalogues/(:any)'] = "catalogues/index/$1";
其中(:any)表示匹配所有除CI保留关键字外的内容,后面的$1为index传入的参数内容。
多个参数采用多个(:any),如两个参数的为:$route['catalogues/(:any)/(:any)'] = "catalogues/index/$1/$2";
注:route规则如果同一目录下精确配置要在模糊配置上面,否则不起作用,如:
$route['catalogues/more'] = "catalogues/more";
$route['catalogues/(:any)'] = "catalogues/index/$1";

END
注意事项

route规则如果同一目录下精确配置要在模糊配置上面,否则不起作用
nginx服务器不需要.htaccess文件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
龙氏风采
2016-12-20 · 知道合伙人互联网行家
龙氏风采
知道合伙人互联网行家
采纳数:5849 获赞数:12817
从事互联网运营推广,5年以上互联网运营推广经验,丰富的实战经

向TA提问 私信TA
展开全部
  apache去掉index.php
  1.编辑conf/httpd.conf配置文件
  #LoadModule rewrite_module modules/mod_rewrite.so 把该行前的#去掉
  同时对应Directory下要配置 AllowOverride All
  2.在 CI 根目录下(即在index.php,system的同级目录下)新建立一个配置文件,命名为: .htaccess 内容如下:
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond $1 !^(index\.php|robots\.txt)
  RewriteRule ^(.*)$ index.php/$1
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(application|modules|plugins|system|themes) index.php/$1 [L]
  3.把system/application/config/config.php 中$config['index_page'] = "index.php";改为$config['index_page'] = "";
  4.重启apache
  php CI 实战教程:[9]如何去掉index.php目录
  nginx去掉index.php
  1.编辑nginx.conf文件
  vi /usr/local/xxxxx/nginx/conf/nginx.conf
  #nginx去掉index.php
  location / {
  rewrite ^/$ /index.php last;
  #防止某些文件夹被直接访问
  rewrite ^/(?!index\.php|robots\.txt|uploadedImages|resource|images|js|css|styles|static)(.*)$ /index.php/$1 last;
  }
  2.config/config.php下配置$config['index_page'] = '';
  3..重启nginx
  去掉默认的index方法,如图的URL配置如:
  config/routes.php,配置$route['catalogues/(:any)'] = "catalogues/index/$1";
  其中(:any)表示匹配所有除CI保留关键字外的内容,后面的$1为index传入的参数内容。
  多个参数采用多个(:any),如两个参数的为:$route['catalogues/(:any)/(:any)'] = "catalogues/index/$1/$2";
  注:route规则如果同一目录下精确配置要在模糊配置上面,否则不起作用,如:
  $route['catalogues/more'] = "catalogues/more";
  $route['catalogues/(:any)'] = "catalogues/index/$1";
  php CI 实战教程:[9]如何去掉index.php目录
  END
  注意事项
  route规则如果同一目录下精确配置要在模糊配置上面,否则不起作用
  nginx服务器不需要.htaccess文件
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式