htaccess 尾部斜线问题

htaccess trailing slash issue

由于没有尾部斜线 url,我遇到了一些问题。我在 Google 中进行了搜索,但无法获得准确的结果。

  From Url : local.xxxx.com/stories

当我尝试上述 Url 时,它重定向到

  To Url : local.xxxx.com/sapp/View//stories/

Htaccess:

DirectorySlash Off
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}/app/View/%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}/app/View/%{REQUEST_URI} -d
RewriteRule ^ /app/View/%{REQUEST_URI} [L]

现在我收到 403 Forbidden 错误。您无权访问此服务器上的 /app/View//故事。

如果我添加尾部斜杠,那么它就可以完美运行。如果没有斜杠,我们可以在 url 的末尾添加斜杠,如果没有参数。

任何人都可以建议我如何实现这一目标。

这很可能是因为 /app/View/stories/ 是一个真实的目录,而 Apache 的 mod_dir 正在添加一个尾部斜杠。

您可以使用此代码修复:

DirectorySlash Off
RewriteEngine On

# internally add a trailing slash to directories
RewriteCond %{DOCUMENT_ROOT}/app/View/%{REQUEST_URI} -d
RewriteRule [^/]$ /app/View/%{REQUEST_URI}/ [L] 

RewriteCond %{DOCUMENT_ROOT}/app/View/%{REQUEST_URI} -f [OR]
RewriteCond %{DOCUMENT_ROOT}/app/View/%{REQUEST_URI} -d
RewriteRule ^ /app/View/%{REQUEST_URI} [L]