我如何创建一个重定向到launch.php的mod_rewrite?i =/the/url/that/they/want?

rmh*_*rmh 0 apache url mod-rewrite

因此,如果用户键入mydomain.com/dashboard,则服务器实际发送的文档为/launch.php?i=/dashboard.

一个警告是,我想留下请求

  • /标志
  • /人
  • /海报
  • / CSS
  • /图标
  • /图片
  • /库
  • /模式

单独,他们应该请求实际的文件夹.

我该如何创建这样的mod_rewrite?

Gus*_*eno 5

这是CakePHP框架的.htaccess文件.

请替换index.php和?url =以满足您的需求.

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

"!-d"告诉Apache遵循现有文件夹,"! - f"跟随现有文件.

其他一切都是通过index.php引导的

正如评论中所建议的那样,你必须要知道,如果它不起作用,可能是因为mod_rewrite没有启用,你不会得到一个错误说明这个事实,你可能只有一个HTTP 404.