【问题标题】:How to redirect my homepage only using .htaccess如何仅使用 .htaccess 重定向我的主页
【发布时间】:2019-10-08 05:32:35
【问题描述】:

我知道这对你来说是个愚蠢的问题,但对我来说不是

我正在使用rdp 管理我的帐户,但不知何故我遇到了问题

就像我的作品集在hthocs/portfolio 文件夹中一样,现在每当有人访问它时,我都需要这样

example.com

每当有人访问htdocs/example,我都需要这样

example.com/example

所以我只想重定向我网站中的主页文件夹,其他文件夹正常运行

我在网上搜索,发现是这样的

重定向匹配 ^/$ /portfolio

但是使用它,它会显示正确的路径,例如example.com/portfolio

示例

给你一个localhost的例子,

htdocs
|
|--- portfolio (folder)
|--- stackoverflow (folder)

每当我在浏览器中访问localhost 时(在内部它会重定向到htdocs/portfolio),当我在浏览器中访问localhost/stackoverflow 时,它会重定向到htdocs/stackoverflow 而不是htdocs/portfolio/stackoveflow

使用RedirectMatch ^/$ /portfolio 这段代码,我解决了我的问题,但是每当我访问localhost 时,在浏览器中它会显示真实路径localhost/portfolio。我不想让客户知道它会重定向到这个文件夹

我使用# 滚动网站,但现在当我点击它时,它会重定向到原始文件夹

【问题讨论】:

  • 我不知道rdp 是什么,我觉得你的问题很混乱,但据我了解,你想逃离你的文档根目录(我想是/htdocs/portfolio)。 AFAIK 这是无法做到的:您可以通过使用符号链接来规避它。
  • rdp 是远程桌面协议,我有aws 但我听不懂你评论中的任何字
  • 必须知道什么是文档根目录。请参考httpd.apache.org/docs/2.4/urlmapping.html 突出显示 url 和本地路径之间的区别。
  • 在那篇文章中,Files Outside the DocumentRoot 部分解决了您的问题。
  • 我知道文档根是什么,但我不想更改文档根路径,我只想更改主页路径和其他文件夹的行为规律

标签: apache .htaccess redirect


【解决方案1】:

您可以在站点根目录 .htaccess 中使用这些规则:

RewriteEngine On

# to internally rewrite / to /portfolio
RewriteRule ^$ /portfolio/ [L]

要修复 css/js,您可以在页面 HTML 的 <head> 标记下方添加:

<base href="/" />

【讨论】:

  • 感谢@anubhava 的回答,但我需要两个条件合二为一,你可以看到我的edit
  • 您的第二个解决方案,工作正常,但 css js 未加载
  • 我真的不了解apache的东西,请访问stackoverflow.com/questions/8221022/…
  • 很高兴您使用帮助解决了您的问题@StackoverflowUser,感谢您的帮助 anubhava,为此 +1
  • 你能帮我的朋友解决这个问题吗? stackoverflow.com/questions/57884652/…
猜你喜欢
  • 1970-01-01
  • 2016-02-22
  • 1970-01-01
  • 2012-10-20
  • 2023-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多