关于lnmp下搭thinkPHP无法找打指定静态页面(求答案)(急)
我在lnmp 下架了一个thinkPHP框架对应的小网站,非常奇怪,在环境都配置好后(配置文件里默认模块是Index,默认方法是index),我在url里输入localhost:10007/index.php/member/login,正常来说应该显示login.html,但是显示的是index.html的页面,只是样式都不对,查看源代码后发现样式路径是这样的,/index.php/index.php/member/index/Tpl/css/style.css,后来我config.php里的配置项改了如下:
'DEFAULT_MODULE'=>'Member', //设置默认的控制器名称
'DEFAULT_ACTION'=>'login', //设置默认的方法名称
又回无论url输入什么都总停留在login.html对应页,但是样式不对,产看原代码后发现样式路径是这样的,/index.php/index.php/index/index/Tpl/css/passport.min.css
总之,好像我的'DEFAULT_MODULE'和'DEFAULT_ACTION'配置项配置成什么,url无论输入什么都回显示与配置文件中默认的模块和方法对应的html文件
而且,应该也不是框架的问题,我从新下了个最新版本的thinkPHP,也不行,这次连index.html页面也显示不出来
我感觉就是我的那里配置不对,,但是又找不到!!!
主要的目录结构是这样:
App
index
Conf
config.php
Common
Lang
Runtime
Lib
Action
IndexAction.class.php
MemberAction.class.php
Tpl
default
Index
index.html
Member
login.html
js
css
images
ThinkPHP (ThinkPHP框架)
index.php
index.php内容如下
<?phpheader("content-type:text/html;charset=utf-8");// 定义ThinkPHP框架路径(相对于入口文件)define('THINK_PATH', './ThinkPHP'); //定义项目名称和路径define('APP_NAME', 'myapp');define('APP_PATH', './index');define('BACK_URL','./index.php');// 加载框架入口文件 require(THINK_PATH."/ThinkPHP.php");//实例化一个网站应用实例App::run();?>
config.php页面
<?phpreturn array( //'配置项'=>'配置值' 'DEFAULT_MODULE'=>'Index', //设置默认的控制器名称 'DEFAULT_ACTION'=>'index', //设置默认的方法名称 'APP_DEBUG'=>true, //开启调试模式 'TMPL_L_DELIM'=> '{{', // 模板引擎普通标签开始标记 'TMPL_R_DELIM'=> '}}', // 模板引擎普通标签结束标记 'URL_MODEL'=> 0, 'DB_NAME'=> 'Route', 'DB_PREFIX'=> 'p_', 'TMPL_ENGINE_TYPE'=>'Smarty', 'TOKEN_ON'=>false, 'TOKEN_NAME'=>'__hash__', 'TOKEN_TYPE'=>'md5', 'DB_FIELDTYPE_CHECK'=>false, 'TMPL_ENGINE_CONFIG'=>array( 'caching'=>false, 'template_dir'=>TMPL_PATH, 'compile_dir'=>CACHE_PATH, 'cache_dir'=>TEMP_PATH, 'left_delimiter'=>"{{", 'right_delimiter'=>"}}" ), 'TMPL_ACTION_ERROR' => TMPL_PATH.'default/Public/error.html', // 默认错误跳转对应的模板文件 'TMPL_ACTION_SUCCESS' => TMPL_PATH.'default/Public/success.html',);?>
IndexAction.class.php页面
<?php// 本文档自动生成,仅供测试运行class IndexAction extends Action{ /** +---------------------------------------------------------- * 探针模式 +---------------------------------------------------------- */ public function checkEnv() { load('pointer',THINK_PATH.'/Tpl/Autoindex');//载入探针函数 $env_table = check_env();//根据当前函数获取当前环境 echo $env_table; } //重新定义的内容 public function index() { $this->display(); }}?>
MemberAction.class.php页面
<?phpclass MemberAction extends Action{ function login(){ $this->display(); }}
index.html 和 login.html 是内容不同的两个静态页面
回复讨论(解决方案)
原来是因为nginx下默认不支持thinkPHP的url的pathinfo 模式,,需要更改nginx的配置文件
apache和nginx是存在很多差?的,不可相同?之
如果?nginx缺少?解的?最好是?用,否?就像csdn一?常常出? 50x 的??
恩,Apache与Nginx之间有很多差异,比如说rewrite重写规则就有一定的差异...
如果有人也遇到同样问题,可以参考这个网址,,但我没成功,我不是完全按他的来的。。http://blog.fity.cn/post/416/
恩,,回头学习下nginx以后肯定会经常接触

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

會話劫持可以通過以下步驟實現:1.獲取會話ID,2.使用會話ID,3.保持會話活躍。在PHP中防範會話劫持的方法包括:1.使用session_regenerate_id()函數重新生成會話ID,2.通過數據庫存儲會話數據,3.確保所有會話數據通過HTTPS傳輸。

SOLID原則在PHP開發中的應用包括:1.單一職責原則(SRP):每個類只負責一個功能。 2.開閉原則(OCP):通過擴展而非修改實現變化。 3.里氏替換原則(LSP):子類可替換基類而不影響程序正確性。 4.接口隔離原則(ISP):使用細粒度接口避免依賴不使用的方法。 5.依賴倒置原則(DIP):高低層次模塊都依賴於抽象,通過依賴注入實現。

在PHPStorm中如何進行CLI模式的調試?在使用PHPStorm進行開發時,有時我們需要在命令行界面(CLI)模式下調試PHP�...

如何在系統重啟後自動設置unixsocket的權限每次系統重啟後,我們都需要執行以下命令來修改unixsocket的權限:sudo...

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。
