私はCodeigniterで初めてです。この問題が発生したのは初めてです。私は、多くのモデル、コントローラ、およびマルチレベルビューを持つプロジェクトを持っています。すべての、しかし私のコントローラの1つが動作していません。私は私の問題を説明するために最善を尽くします。特定のコントローラがCodeIgniter 3.0で動作しないのはなぜですか?
のは、私は、各コントローラにアクセスするためのビューからコントローラAとコントローラBの
リンクを持っているとしましょう:
//This link go to Con A
<a href="<?php print base_url(); ?>ConA/user">TEST1</a>
//This link go to Con B
<a href="<?php print base_url(); ?>ConB/user2">TEST2</a>
コンAを
defined('BASEPATH') OR exit('No direct script access allowed');
class ConA extends CI_Controller
{
function __construct()
{
parent::__construct();
$this->load->model('MAdmin');
}
public function user()
{
$data = array (
'titlepage' => APP_TITLEPAGE,
'titleapp' => 'User Management',
'listdept' => $this->MAdmin->get_dept(),
'complete' => 'false',
'contentpage' => 'admin/user');//This is the view directory. Will open user.php in myproject/application/views/admin
$this->load->view('shared/master_app', $data);
}
コンB
MyProjectと/<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /myproject
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /myproject/index.php?/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 /index.php
</IfModule>
で
defined('BASEPATH') OR exit('No direct script access allowed');
class ConB extends CI_Controller
{
function __construct()
{
parent::__construct();
$this->load->model('MAdmin');
}
public function user2()
{
$data = array (
'titlepage' => APP_TITLEPAGE,
'titleapp' => 'User Management',
'listdept' => $this->MAdmin->get_dept(),
'complete' => 'false',
'contentpage' => 'admin/user');//This is the view directory. Will open user.php in myproject/application/views/admin
$this->load->view('shared/master_app', $data);
}
ビュー内の共有/ master_app
<div class="wrapper wrapper-content"><?php $this->load->view($contentpage); ?></div>
$ CONFIG
$config['base_url']= "http://".$_SERVER['HTTP_HOST'].str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);
の.htaccessオフラインモードで
- (ローカルホスト)すべてがうまく
- リダイレクト後のアドレスバーにURLを実行している:注
<IfModule authz_core_module>Require all denied</IfModule> <IfModule !authz_core_module>Deny from all</IfModule>
MyProjectと/アプリケーション210は
の.htaccessリンクからは同じです(命名を除く)。
のphp.iniファイルでのmod_rewriteを有効にしてください。 https://www.codeigniter.com/user_guide/general/styleguide.html –
専門家ではありませんが、私はCodeigniterを起動するときに問題が発生しています。ローカルではすべてのURLが正常に実行されていますが、問題が発生したサーバー上で読み込まれませんでした。だから私はCIの命名規則に従わなかったことに気付きました。だから最初にそれをチェックしてください。 –
この回答を確認してください。 http://stackoverflow.com/a/16972966/5077564 –