我一直在尝试将我的codeigniter4应用程序部署到本地apache服务器上。
我希望能够通过http://localhost/my_app/访问我的应用程序。
我已经在.env文件中设置了url:
app.baseURL = 'http://localhost/my_app'
已编辑公用/文件夹内的.htaccess
RewriteBase /public/
并为apache创建了配置
<Directory "/var/www/html/my_app/public">
AllowOverride all
LogLevel debug
</Directory>
Alias /my_app /var/www/html/my_app/public
我可以访问主页http://localhost/my_app,但当我尝试转到另一个页面http://localhost/my_app/bootstrapview时,apache找不到该url。
"The requested URL was not found on this server."
我是不是错过了什么能让它工作的东西?我不想更改index.php文件的位置,这是我在搜索中找到的大多数内容。
当我在spark服务器上试用它时,它工作得很好。
编辑:我使用的是Ubuntu18.04,并且启用了mod_rewrite。
如果我不使用RewriteBase,它会一直被重定向:
redirected from r->uri = /my_app/public/index.php/public/index.php/public/index.php/public/index.php/public/index.php/bootstrapview
发布于 2020-03-18 09:04:30
在检查其他选项的同时,我找到了一些答案。
在此配置下,如果您将RewriteBase更改为应用程序的URL,它将起作用:
RewriteBase /my_app/
重定向到基本URL "http://localhost/my_app/“仍然存在一个问题,即apache找不到基本路由(在Routes.php ->”/“中),但您可以创建另一个指向它的路由(例如”/home“)。
https://stackoverflow.com/questions/60703727
复制相似问题