ホームページ > バックエンド開発 > PHPチュートリアル > lnmp下のthinkPHPで指定の静的ページが見つからない件について(回答求む)(緊急)

lnmp下のthinkPHPで指定の静的ページが見つからない件について(回答求む)(緊急)

WBOY
リリース: 2016-06-23 14:39:30
オリジナル
871 人が閲覧しました

thinkPHP フレームワークに対応する小さな Web サイトを lnmp から削除しました。環境が設定された後 (設定ファイルのデフォルトのモジュールは Index で、デフォルトのメソッドは Index です)、localhost:10007/index と入力しました。通常はlogin.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' 設定項目が設定されている場合、デフォルトのモジュールとメソッドに対応する HTML ファイルは、何を入力しても設定ファイルにあるとおりに表示されます

また、フレームワークには問題がないはずです。 . thinkPHPの最新版をダウンロードしたのですが、今度はindex.htmlのページすら表示できません
そこの設定が間違っているような気がしますが、見つかりません。 !!!

メインのディレクトリ構造は次のとおりです:

App
Index
Conf
config.php
Common
Lang
Runtime
Lib
Action
Index Action.class.php
MemberAction.class.php
Tpl インデックス.html
メンバー
js


php ページ
rre ee

IndexAction.class.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();?>
ログイン後にコピー


MemberAction.class.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',);?>
ログイン後にコピー

Index.html とlogin.html は、コンテンツが異なる 2 つの静的ページです


ディスカッションへの返信 (解決策)

nginx はデフォルトでは thinkPHP の URL の pathinfo モードをサポートしていないことが判明したため、nginx の設定ファイルを変更する必要があります

Apache と nginx の間には多くの違いがあります。
nginx に解決策がない場合は、それが最適です? いいえ、よくある 50x を生成する csdn と同様です

たとえば、Apache と Nginx には多くの違いがあります。書き換えの書き換えルールには特定の違いがあります...

誰かが同じ問題に遭遇した場合は、この Web サイトを参照してください。しかし、私は彼の指示に正確に従っていませんでした。 。 http://blog.fity.cn/post/416/

そうですね、nginx をもう一度学び直したら、もっと頻繁に触れるようになります

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート