![使用本地网络上的主机名无法正确解析路径 - Mac](https://linux22.com/image/1601979/%E4%BD%BF%E7%94%A8%E6%9C%AC%E5%9C%B0%E7%BD%91%E7%BB%9C%E4%B8%8A%E7%9A%84%E4%B8%BB%E6%9C%BA%E5%90%8D%E6%97%A0%E6%B3%95%E6%AD%A3%E7%A1%AE%E8%A7%A3%E6%9E%90%E8%B7%AF%E5%BE%84%20-%20Mac.png)
我使用 Mac 作为服务器,并使用 Apache 的 http-vhosts.conf 文件解析本地名称。我将此服务器用作开发平台,希望它基本上镜像我的 Ubuntu Web 服务器。我遇到的问题是,虽然名称 myserver.local 解析到正确的位置,但 .htaccess 文件中的任何路径均不被接受。
例如:RewriteRule /search /cgi-bin/search.pl
尽管文件位于正确的位置,我还是收到“文件未找到”错误。服务器没有像在域中那样处理反斜杠。尽管在 hosts 文件和 http-vhosts.conf 文件中设置了 myserver.local,但它看不到我的文件,因为它无法跟踪路径。明白了吗?知道为什么吗?
更新:这可能是由于 cgi-bin 目录未正确映射而导致的问题。我的错误日志显示 Apache 正在查找 /Library/WebServer/CGI-Executables。如何根据每个域/主机名映射 cgi-bin?
答案1
我找到了。这是我必须在 http.conf 文件中替换的条目。
ScriptAliasMatch "^/([a-zA-Z0-9]+)/cgi-bin/(.+)" "/Users/用户名/Sites/$1/cgi-bin/$2"