thinkphp 通过.htaccess设置 去掉url 中的index.php后,admin登录后打不开

通过.htaccess和config.php(App/Common/Conf目录下)设置url中的index.php和home/index全部隐形去掉后,域名/admin... 通过.htaccess 和 config.php (App/Common/Conf目录下) 设置
url中的index.php 和 home/index 全部隐形去掉后,
域名/admin.php打开登录成功后进不去 提示 “非法操作:Admin”,请问是哪里出了问题?

.htaccess设置如下:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/home/index/$1 [QSA,PT,L]
</IfModule>

config.php设置主要如下:

'URL_MODEL'=>2,
'MODULE_ALLOW_LIST' => array (
'Home',
'Admin',
'User'
),

'DEFAULT_MODULE' => 'Home', // 默认模块
'DEFAULT_CONTROLLER' => 'Index', // 默认控制器名称
'DEFAULT_ACTION' => 'index', // 默认操作名称

前台已经实现
域名/about.hrml
域名/news.html
这种最精简的url了

后台访问地址是 : 域名/admin.php
打开后跳转到: 域名/index.php/Admin/login/index.html
输入账户密码登录成功后跳转到 域名/Admin/index/index.html
提示"非法操作:Admin"

我在此页面的url域名后加index.php后登录进去了。地址如下
域名/index.php/Admin/index/index.html
然后点击每个栏目还是抱非常操作,又是url缺少index.php,一旦补全则正常。
请问改如何解决。

以下是几个文件设置的内容,看看对你们解决问题有无帮助
入口文件index.php和admin.php设置如下:

index.php:

// 开启调试模式 建议开发阶段开启 部署阶段注释或者设为false
define('APP_DEBUG',true);
//define('BIND_MODULE','Home');//绑定Home模块到当前入口文件,可用于新增Home模块
// 定义应用目录
define('APP_PATH','./App/');
// 引入ThinkPHP入口文件
require './ThinkPHP/ThinkPHP.php';

admin.php:
header('Location: /index.php/Admin/login/index.html');
展开
 我来答
若以下回答无法解决问题,邀请你更新回答
rendongrui2016
2018-06-12 · 超过51用户采纳过TA的回答
知道小有建树答主
回答量:100
采纳率:100%
帮助的人:47.9万
展开全部
改成但入口文件吧。删除admin.php
在入口文件添加 define('BIND_MODULE','Admin').
追问
入口文件添加 define('BIND_MODULE','Admin').后,
默认打开的是后台了,前台没有了,
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
斯奥斯卡
2018-06-12 · 超过14用户采纳过TA的回答
知道答主
回答量:41
采纳率:80%
帮助的人:17万
展开全部
你登陆成功之后路径是怎么写的
追问
/index.php/Admin/login/index.html
追答
  1. httpd.conf配置文件中加载了mod_rewrite.so模块  //在APACHE里面去配置

    #LoadModule rewrite_module modules/mod_rewrite.so把前面的警号去掉

  2. AllowOverride None 将None改为 All      

    在APACHE里面去配置 (注意其他地方的AllowOverride也统统设置为ALL)
    <Directory "D:/server/apache/cgi-bin">
    AllowOverride none  改   AllowOverride ALL
    Options None
    Order allow,deny
    Allow from all
    </Directory>

  3. 确保URL_MODEL设置为2,在项目的配置文件里写
    return Array(
    'URL_MODEL' => '2',
    );

  4. .htaccess文件必须放到跟目录下

    这个文件里面加:
    <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
    </IfModule>

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式