【问题标题】:mod-rewrite RewriteBase not working correctly from rootmod-rewrite RewriteBase 无法从根目录正常工作
【发布时间】:2016-10-19 04:13:44
【问题描述】:

您好,我一直在关注 Codecourse 的 YouTube 频道上的 "Build a PHP MVC Application" 教程。

我已将项目移至根目录(htdocs) 现在,当我加载 http://localhost 时,我看到的只是默认的 apache 文件夹索引。

我的文件是这样组织的:

htdocs
->app
->public
->.htaccess

.htacces 包含:

Options -MultiViews
RewriteEngine On

RewriteBase /public/

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

编辑:如果我去 localhost/home(我设置的控制器之一)它会正确加载页面

【问题讨论】:

  • 文件public/index.php是否存在?
  • @hjpotter92 是的,该文件还有另一件事我忘了提到的是,如果我转到localhost/home(我设置的控制器之一)它会正确加载页面

标签: php regex apache mod-rewrite xampp


【解决方案1】:

可重写部分http://localhost/ 为空,因此不匹配 (.+)。 它将匹配 (.*)。

【讨论】:

  • 感谢删除 RewriteCond %{REQUEST_FILENAME} !-d 并更改正则表达式字符串后一切正​​常,谢谢伙计
猜你喜欢
  • 1970-01-01
  • 2023-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多