使用 Apache Alias 而不是 RewriteRule 来提供 HTML 页面
use Apache Alias instead of RewriteRule to serve HTML page
Apache 配置中的简单别名不起作用 -
Alias /url/path/some-deleted-page.html /url/path-modified/new-avatar-of-some-deleted-page.html
它给出“找不到页面”。
但是 RewriteRule 按预期工作,但它会将重定向状态发送到浏览器。我希望 browser/user 不知道重定向。因此,我想使用 Alias 而不是 RewriteRule。我想确认 mod_alias 是否可以用来映射个人 URL。
我还使用 ProxyPassMatch,它将所有 html 页面作为 PHP 脚本执行。添加 ProxyPass 也没有区别。
ProxyPass /url/path/some-deleted-page.html !
请提供帮助,以便我可以使用 Alias 而不是 RewriteRule 映射单个 URL(其中一堆)。
mod_alias
的目的是将请求的 URL 映射到系统 运行 您的 httpd 实例上的一个目录。它不会 return 对浏览器有任何影响(即没有重定向代码,什么也没有)。这一切都是在内部完成的。因此,您的客户甚至不知道它在那里。
配置
[...]
DocumentRoot "/opt/apache/htdocs"
Alias "/someurl/" "/opt/other_path/someurl_files/"
[...]
在这种情况下,除了 /someurl/
之外,请求任何 URL 的用户将收到来自 /opt/apache/htdocs
的文件。
如果用户请求 /someurl/
,将使用来自 /opt/other_path/someurl_files/
的文件。
此示例中仍然缺少用于保护 Alias
目录的 <Directory>
定义。
你应该阅读:https://httpd.apache.org/docs/2.4/mod/mod_alias.html
Alias
将涵盖您需要将某个 URL 指向文件系统上特定目录的情况。
如果您需要修改文件名(即客户端要求文件A,而您发回页面B),您应该使用RewriteRule
。要隐藏您更改文件名的事实,请使用 [P]
标志。
该指令允许您使用正则表达式,但仍使用代理机制。所以您的客户确实知道发生了什么,因为他地址栏中的地址没有改变。
Apache 配置中的简单别名不起作用 -
Alias /url/path/some-deleted-page.html /url/path-modified/new-avatar-of-some-deleted-page.html
它给出“找不到页面”。 但是 RewriteRule 按预期工作,但它会将重定向状态发送到浏览器。我希望 browser/user 不知道重定向。因此,我想使用 Alias 而不是 RewriteRule。我想确认 mod_alias 是否可以用来映射个人 URL。
我还使用 ProxyPassMatch,它将所有 html 页面作为 PHP 脚本执行。添加 ProxyPass 也没有区别。
ProxyPass /url/path/some-deleted-page.html !
请提供帮助,以便我可以使用 Alias 而不是 RewriteRule 映射单个 URL(其中一堆)。
mod_alias
的目的是将请求的 URL 映射到系统 运行 您的 httpd 实例上的一个目录。它不会 return 对浏览器有任何影响(即没有重定向代码,什么也没有)。这一切都是在内部完成的。因此,您的客户甚至不知道它在那里。
配置
[...]
DocumentRoot "/opt/apache/htdocs"
Alias "/someurl/" "/opt/other_path/someurl_files/"
[...]
在这种情况下,除了 /someurl/
之外,请求任何 URL 的用户将收到来自 /opt/apache/htdocs
的文件。
如果用户请求 /someurl/
,将使用来自 /opt/other_path/someurl_files/
的文件。
此示例中仍然缺少用于保护 Alias
目录的 <Directory>
定义。
你应该阅读:https://httpd.apache.org/docs/2.4/mod/mod_alias.html
Alias
将涵盖您需要将某个 URL 指向文件系统上特定目录的情况。
如果您需要修改文件名(即客户端要求文件A,而您发回页面B),您应该使用RewriteRule
。要隐藏您更改文件名的事实,请使用 [P]
标志。
该指令允许您使用正则表达式,但仍使用代理机制。所以您的客户确实知道发生了什么,因为他地址栏中的地址没有改变。