我正在发送表单数据(视图到控制器(,但我想从 url 中删除索引.php。 为此,我从配置中删除了索引.php.php但它对我不起作用。 如何在不使用 index.php 的情况下从 url 中删除索引.php并发布数据?这是我在视图中的代码:
<form method="post" action="<?php echo base_url()?>/index.php/Home/login">
<div class="form-group">
<label for="exampleInputEmail1">Email address</label>
<input type="email" class="form-control" name="name"id="exampleInputEmail1" aria-describedby="emailHelp" placeholder="Enter email" required>
</div>
<div class="form-group">
<label for="exampleInputPassword1">Password</label>
<input maxlength="10" minlength="3" type="password" name="name" class="form-control" id="exampleInputPassword1" placeholder="Password"required>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
当您需要指向控制器的链接时,您需要将帮助程序调用从action="<?php echo base_url()?>/index.php/Home/login"
更改为action="<?php echo site_url('home/login')?>"
。对于静态资源(css、上传等(,请继续调用base_url()
。
您还需要按照注释中的建议正确配置mod_rewrite
。
1(制作.htaccess文件并放置此代码
RewriteEngine on
RewriteCond $1 !^(index.php|resources|robots.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
2(变更
$config['index_page'] = '';
remove index.php present in config.php file
只需单击此处即可在根文件夹中制作htaccess文件。
现在从此行中删除索引.php。
<form method="post" action="<?php echo base_url()?>/index.php/Home/login">
在根系统文件夹中创建文件 .htaccess 并在下面添加代码
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
然后,您可以在代码中删除索引.php