我有以下Codeigniter 4项目结构。我在使用base_url()并在.env文件中正确设置app.baseURL时遇到问题。以下两个问题是由于同一问题引起的:
项目结构
wamp-web-root
ci_4_project
public
app
assets
APP结构
public
system
app
Controllers
First_controller.php
Subfolder1
Subfolder2
Subfolder3
Second_controller.php
首要问题-控制器子目录
我的[[First_controller.php<a href="<?php echo base_url()."/public/first_controller";?>">Link</a>"
正常,但我的Second_controller.php <a href="<?php echo base_url()."/public/subfolder1/subfolder2/subfolder3/second_controller";?>">Link</a>"
无法正常工作。
我使用以下代码在我的视图中包括CSS文件:第二个问题-访问资产文件夹
<link href="<?php echo base_url();?>/assets/bootstrap-4.4.1/css/bootstrap.css" rel="stylesheet">
在我的[.env文件中
:如果我使用app.baseURL = 'http://localhost/ci_4_project/public/'
,则会显示Codeigniter调试工具栏,但视图中不包含CSS文件。如果我使用app.baseURL = 'http://localhost/ci_4_project/'
,即未附加public,则CSS文件将包含在视图中,但不会显示Codeigniter调试工具栏。显然这是因为资产文件夹不在公共文件夹内,而是在同一级别,所以当我在baseURL中使用public时,资产不包括在内。我的问题是:如何定义app.baseURL以及是否在URL中添加public。
namespace App\Controllers\Subfolder1\Subfolder2\Subfolder3;