提前感谢您的帮助。
这就是我所在的位置以及我要完成的工作:
- 我在 /home/username/code/project/static/ 中有静态文件
- 我的文档根目录是 /home/username/public_html/ (这是我的 .htaccess 文件所在的位置)。
我正在尝试在 .htaccess 文件中使用以下内容(我无权访问 httpd.conf):
RewriteRule ^(static/.*)$ /home/username/code/project/static/ [L]
但如果我正确理解了 mod_rewrite 的文档(见下文),“/home/username/code/project/static/”将被视为相对于我的文档根目录的文件系统路径或 URL 路径,而不是绝对的我想要的文件系统路径。
我尝试使用“~/code/project/static/”和“../code/project/static/”,但在尝试访问我的页面时出现内部服务器错误(是的,我有点菜鸟)。
所以我的问题是:有没有办法将 .htaccess 上下文中使用的重写规则替换为绝对文件系统路径,而不是相对于我的 DocumentRoot 的路径?
这是 mod_rewrite 文档的摘录供参考(可以在这里找到完整的:http ://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule ):
例如,如果您指定 /www/file.html 的替换字符串,那么这将被视为 URL 路径,除非在根目录或文件系统中存在名为 www 的目录(或者,在使用重写的情况下在 .htaccess 文件中,相对于您的文档根目录),在这种情况下,它将被视为文件系统路径。
任何帮助都感激不尽 :)
谢谢!