在我的apache服务器的httpd.conf文件中(在windows7上),我使用了 LoadModule alias_module modules / mod_alias.so 然后我用以下内容修改了httpd.conf:
< IfModule alias_module>
Alias / b / blog
ScriptAlias / cgi-bin /“cgi-bin /”
< / IfModule>
重新启动服务器并在我的地址栏中键入localhost / b后,它没有重定向到localhost / blog.I不知道为什么。可以帮助我,非常感谢任何帮助
答案 0 :(得分:2)
别名声明与重定向不同。
Alias /b /blog
告诉Apache在URL /blog
上的路径http://myserver.com/b
(在Windows上没有多大意义)下的文件系统上存在的文件,即http://myserver.com/b/something.html
请求将尝试从文件系统返回文件/blog/something.html
的内容,如果该文件不存在则失败 - 浏览器地址栏仍会显示http://myserver.com/b/something.html
。
这听起来像你正在追求的是
Redirect /b http://myserver.com/blog
在这种情况下,对http://myserver.com/b/something.html
的请求将导致HTTP重定向,浏览器的地址栏将更改为http://myserver.com/blog/something.html
。
当然,您需要确保/blog
正确解析,如果Alias
不在DocumentRoot
之内,可能需要自己的Alias /blog "C:/web/blog"
<Directory "C:/web/blog">
Order allow,deny
Allow from all
</Directory>
。
{{1}}