本地主机文件和对 REST 服务器的引用
Localhost files and references to REST server
我有一个网站设置为 test/debug 在也运行 ServiceStack 的远程服务器上。我正在转换我的工作流程以允许我在本地进行测试。我已经让我的虚拟主机正常工作并正确指向我的文件,但如果不更改代码中对 ServiceStack 的所有引用,我将无法访问数据。
这是初始远程设置:http://testserver/ 是网络服务器,目录 /svc/ 是 ServiceStack。所以当我需要数据时,我基本上调用 $.ajax('/svc/servicename') 来取回 JSON 数据。
显然,在本地这行不通,因为没有 /svc/ 目录,也没有 ServiceStack。有没有办法设置另一个虚拟主机,或者一个 sym link,或者另一个选项,以便 /svc/ 目录(本地)可以指向 http://testserver/svc/ 来接收数据?我已经解决了跨域问题,所以我不必担心。
基本上,我尽量保持本地文件不变,所以当我将它们移动到实时服务器时,一切正常。我不想将“/svs/servicename”的所有引用更改为“http://testserver/svc/servicename”,然后在我需要发布时再返回。
非常感谢任何帮助!
编辑:
我已经尝试在 httpd-vhosts.conf 中添加一个 RedirectMatch,它似乎在进行重定向,但我在 ajax 调用中遇到错误,状态为“302 Found”。我在本地主机站点的虚拟主机定义中有这个:
RedirectMatch "^/svc/(.*)" "http://testserver/svc/"
我能够在不更改源文件中的任何内容的情况下让它工作。所有这些都在 httpd-vhosts.conf 文件中完成。基本上我必须在虚拟主机定义中添加 ProxyPass...
<VirtualHost *:80>
ServerName localtest.com
ServerAlias www.localtest.com
DocumentRoot "/Users/ME/Site1/"
ErrorLog "/private/var/log/apache2/localtest.com-error_log"
CustomLog "/private/var/log/apache2/localtest.com-access_log" common
ServerAdmin web@localtest.com
ProxyPass "/svc" "http://testserver/svc" <------- this line!
</VirtualHost>
我有一个网站设置为 test/debug 在也运行 ServiceStack 的远程服务器上。我正在转换我的工作流程以允许我在本地进行测试。我已经让我的虚拟主机正常工作并正确指向我的文件,但如果不更改代码中对 ServiceStack 的所有引用,我将无法访问数据。
这是初始远程设置:http://testserver/ 是网络服务器,目录 /svc/ 是 ServiceStack。所以当我需要数据时,我基本上调用 $.ajax('/svc/servicename') 来取回 JSON 数据。
显然,在本地这行不通,因为没有 /svc/ 目录,也没有 ServiceStack。有没有办法设置另一个虚拟主机,或者一个 sym link,或者另一个选项,以便 /svc/ 目录(本地)可以指向 http://testserver/svc/ 来接收数据?我已经解决了跨域问题,所以我不必担心。
基本上,我尽量保持本地文件不变,所以当我将它们移动到实时服务器时,一切正常。我不想将“/svs/servicename”的所有引用更改为“http://testserver/svc/servicename”,然后在我需要发布时再返回。
非常感谢任何帮助!
编辑: 我已经尝试在 httpd-vhosts.conf 中添加一个 RedirectMatch,它似乎在进行重定向,但我在 ajax 调用中遇到错误,状态为“302 Found”。我在本地主机站点的虚拟主机定义中有这个:
RedirectMatch "^/svc/(.*)" "http://testserver/svc/"
我能够在不更改源文件中的任何内容的情况下让它工作。所有这些都在 httpd-vhosts.conf 文件中完成。基本上我必须在虚拟主机定义中添加 ProxyPass...
<VirtualHost *:80>
ServerName localtest.com
ServerAlias www.localtest.com
DocumentRoot "/Users/ME/Site1/"
ErrorLog "/private/var/log/apache2/localtest.com-error_log"
CustomLog "/private/var/log/apache2/localtest.com-access_log" common
ServerAdmin web@localtest.com
ProxyPass "/svc" "http://testserver/svc" <------- this line!
</VirtualHost>