我正在使用CodeIgniter开发一个应用程序。所有 css 和 js 文件都位于一个名为 assets 的文件夹中,放置在主根目录中:
应用
系统
资产
。
这是主根目录中的.htacess
文件:
RewriteEngine On
RewriteBase /projects/tickets
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
在config.php
文件中,我设置了以下内容:
$config['base_url'] = "http://example.com/projects/tickets/";
$config['index_page'] = '';
在autoload.php
文件中,我设置了以下内容:
$autoload['helper'] = array('html','url');
在视图中footer.php
我有不同的脚本,如下所示:
<script src="<?php echo
base_url('assets/global/plugins/jquery.min.js');?>"
type="text/javascript"></script>
这是一个名为 ticket.php
的简单控制器:
public function index() {
$this->load->view('structure/head');
$this->load->view('structure/header');
$this->load->view('structure/main-navigation');
$this->load->view('structure/content');
$this->load->view('structure/side-bar');
$this->load->view('structure/footer');
}
public function show() {
$this->load->view('structure/head');
$this->load->view('structure/header');
$this->load->view('structure/main-navigation');
$this->load->view('structure/content');
$this->load->view('structure/side-bar');
$this->load->view('structure/footer');
}
现在,如果我转到链接www.example.com/projects/tickets
或指向www.example.com/projects/tickets/ticket
页面显示为例外的链接。
如果我切换到页面www.example.com/projects/tickets/ticket/show
该页面显示为例外,但是尽管js文件具有正确的路径,但它们不起作用。
我做错了什么?
伙计,我快疯了,一切似乎都对,我能欣赏到您的代码与我在生产服务器中使用的代码之间的唯一区别是:
.htaccess
RewriteEngine On
RewriteBase /projects/tickets
#Add www.
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule ^(.*)$ http://.example.com/$1 [L,R=301]
配置.php
$config['base_url'] = 'http://example.com/';
$config['index_page'] = '';
试试这种方式,它总是对我有用。希望对您有所帮助!