欢迎页面仅显示。如果我创建新的控制器和视图意味着它显示'404 Not found'。
Controller - Create.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Create extends CI_Controller {
public function index()
{
$this->load->view('create');
}
}
查看 - create.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');?>
<!DOCTYPE html>
<html lang="en">
<body>
<h1>Welcome to CodeIgniter!</h1>
</body>
</html>
我在浏览器中运行过这样的程序 - “http://example.com/Create/”。但它显示404 Not Found。我也允许所有文件。
答案 0 :(得分:1)
首先显示欢迎页面,因为在application \ config \ routes.php文件中欢迎使用默认控制器
$route['default_controller'] = "welcome";
只有默认控制器才能在没有index.php的情况下使用。
请尝试使用其他控制器"http://example.com/index.php/controllerName/functionName"
您可以参考:https://ellislab.com/codeigniter/user-guide/general/urls.html
答案 1 :(得分:0)
你有这些设置吗?
$config['base_url'] = '';
$config['index_page'] = '';
答案 2 :(得分:0)
我认为这是一个大写的问题。 Linux区分大小写。
修复是您确保将所有 <script type="text/javascript">
var type = $('#Type');
var category = $('#Category');
var country = $('#Country');
var product = $('#Product');
var table = $('#table');
$('#search').click(function () {
var url = '@Url.Action("FetchProductProperties")';
table.empty();
$.getJSON(url, { type: type.val(), category: category.val(), country: country.val(), product: product.val() }, function (data) {
$.each(data, function (index, item) {
var clone = $('#template').clone();
clone.html($(clone).html().replace(/\[#\]/g, '[' + index + ']'));
var cells = clone.find('td');
cells.eq(0).children('span').text(item.ID);
cells.eq(0).children('input').val(item.ID);
cells.eq(1).children('input').first().prop('checked', item.CheckOrNot)
cells.eq(2).children('span').text(item.Name);
cells.eq(2).children('input').val(item.Name);
cells.eq(3).children('span').text(item.PropertyValue);
cells.eq(3).children('input').val(item.PropertyValue);
$('#table').append(clone.find('tr'));
});
});
});
</script>
个文件名大写,即在控制器文件夹中,而不是controller
将其更改为welcome.php
我希望这会有所帮助。
答案 3 :(得分:-1)
您需要启用mod_rewrite并设置&#34; AllowOverride&#34;选项&#34;所有&#34;在你的apache2.conf文件中。
要启用mod_rewrite,只需输入终端并输入以下命令:
a2enmod rewrite (as root user)
要在apache2.conf文件中设置AllowOverride All,您需要打开它,并在该部分中将AllowOverride选项从None设置为All,如下所示:
<Directory /var/www/html/>
AllowOverride All
</Directory>
如果它不存在,那就写下来。