Codeigniter 4 部署到 apache2
Codeigniter 4 deployment to apache2
我一直在尝试将我的 codeigniter 4 应用程序部署到本地 apache 服务器中。
我希望能够通过 http://localhost/my_app/ 访问我的应用程序。
我已经在 .env 文件中设置了 url:
app.baseURL = 'http://localhost/my_app'
编辑了 public/ 文件夹中的 .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, but when I try to go to another page http://localhost/my_app/bootstrapview,apache 找不到url。
"The requested URL was not found on this server."
我是不是错过了什么让它发挥作用的东西?我不想更改 index.php 文件的位置,这是我在搜索中找到的大部分内容。
当我在 spark 服务器上尝试时,它运行良好。
编辑:
我正在使用 Ubuntu 18.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
我在检查其他选项时找到了一些答案。
使用此配置,如果将 RewriteBase 更改为应用程序的 URL,它将起作用:
RewriteBase /my_app/
重定向到基本 URL“http://localhost/my_app/”仍然存在问题,其中 apache 将找不到基本路由(在 Routes.php -> “/”中)但是例如,您可以创建另一个指向它的路由(“/home”)。
我一直在尝试将我的 codeigniter 4 应用程序部署到本地 apache 服务器中。
我希望能够通过 http://localhost/my_app/ 访问我的应用程序。
我已经在 .env 文件中设置了 url:
app.baseURL = 'http://localhost/my_app'
编辑了 public/ 文件夹中的 .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, but when I try to go to another page http://localhost/my_app/bootstrapview,apache 找不到url。
"The requested URL was not found on this server."
我是不是错过了什么让它发挥作用的东西?我不想更改 index.php 文件的位置,这是我在搜索中找到的大部分内容。
当我在 spark 服务器上尝试时,它运行良好。
编辑: 我正在使用 Ubuntu 18.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
我在检查其他选项时找到了一些答案。
使用此配置,如果将 RewriteBase 更改为应用程序的 URL,它将起作用:
RewriteBase /my_app/
重定向到基本 URL“http://localhost/my_app/”仍然存在问题,其中 apache 将找不到基本路由(在 Routes.php -> “/”中)但是例如,您可以创建另一个指向它的路由(“/home”)。