我把我的网站移到了另一个高脚架上,这个主机使用的是润湿器。我的网站有一个名为/usage的页面。
在测试时,我发现页面https://example.com/usage/由于这个webalizer.conf生成了403 Forbidden错误:
#
# This configuration file maps the webalizer log analysis
# results (generated daily) into the URL space. By default
# these results are only accessible from the local host.
#
Alias /usage /var/www/usage
# Alternative e.g. "Require ip 192.168.10"
Require local好的,我将usage重命名为some-usage,并创建了301重定向,但显然配置文件具有更高的优先级。
My问题(S):在webalizer.conf中可以更具体一些,当在https://example.com/usage/上下文中时请忽略/usage ,或者如何设置301重定向以使其工作。
<#>编辑:是否有可能将Alias行更改为:
Alias /webalizer-usage /var/www/usage
^^^^^^^^^^ is added.我不知道这一变化会产生什么样的影响。
我个人更喜欢Apache在https://example.com/usage上下文中忽略D13的解决方案。
发布于 2020-02-15 19:28:08
我想我遗漏了一些东西,但是如果您能够访问服务器配置,那么从您的配置中完全删除webalizer.conf文件似乎可以解决您的问题?(如果您不需要访问Webalizer统计数据的URL?)
或者,按照您的建议,更改webalizer.conf文件中使用的URL:
Alias /webalizer-usage /var/www/usage
# Alternative e.g. "Require ip 192.168.10"
Require local与对服务器配置的任何更改一样,需要重新启动Apache才能使更改生效。
并创建了301重定向,但显然配置文件具有更高的优先级。
嗯,不一定。这取决于您是如何实现重定向的,以及在哪里。完全有可能在.htaccess中实现重写服务器配置中定义的Alias的重定向。(例如,一个简单的mod_alias Redirect会查看请求的URL,因此总是会覆盖一个Alias。但是,在请求映射到文件系统之后,mod_rewrite RewriteRule与URL路径匹配,因此它将不匹配Alias的源--除非RewriteRule直接在服务器配置或vhost上下文中使用,在请求映射到文件系统之前,D15与D15匹配。但是即使这样,您也可以将重定向建立在REQUEST_URI服务器变量上,该变量包含URI,而不是文件系统映射。)
由于#2无论如何都会覆盖Alias,所以更改Webalizer要好得多,正如我在回答的第一部分中提到的那样。
https://webmasters.stackexchange.com/questions/127678
复制相似问题