为跨域ajax调用配置apache mod_proxy
Configuring apache mod_proxy for cross-domain ajax calls
我今天开始制作一个使用Clipped API (http://clipped.me/api.html)的小型JavaScript应用程序,但了解到存在跨域AJAX调用问题,并且API的开发人员没有添加对JSONP的支持。下面是应用程序本身:
var clippedAPI = "http://clipped.me/algorithm/clippedapi.php";
$.ajax({
url: clippedAPI,
type: "GET",
dataType: "JSONP",
data: {
url: "http://pandodaily.com/2013/03/26/y-combinator-demo-day-2013-still-looking-for- the-next-airbnb-or-dropbox/"}
}).done(function(json) {
console.log("JSON Data: " + json.title );
}).fail(function(jqxhr, textStatus, error){
var err = textStatus + ', ' + error;
console.log("Request Failed: " + err);
});
我已经在我的Ubuntu机器上设置了一个Apache服务器,并建议使用mod_proxy来设置一个反向代理。问题是我不知道如何做到这一点——这是我第一次使用Apache。我知道所有的基本知识,比如在终端中访问我的主要Apache配置文件。有谁能给新手讲讲怎么做吗?
Apache mod_proxy in Ubuntu
在Ubuntu中使用Apache设置反向代理:
1。安装reverse_proxy模块
sudo apt-get install libapache2-mod-proxy-html
2。
apt-get install libxml2-dev
3。加载apache2.conf文件
中的模块LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so
LoadModule headers_module /usr/lib/apache2/modules/mod_headers.so
LoadModule deflate_module /usr/lib/apache2/modules/mod_deflate.so
LoadFile /usr/lib/libxml2.so
4。假设您想要转发从内部开始的所有请求。然后将以下内容添加到apache2.conf文件
中# Disable proxy requests, using ProxyPass in vhost
ProxyRequests Off
# Block all requests
<Proxy *>
Order deny,allow
Deny from all
</Proxy>
<Proxy balancer://cluster>
BalancerMember http://internal.server:802
BalancerMember http://internal.server:801
#below is to transfer sessions
#ProxySet lbmethod=bytraffic
</Proxy>
<Location /balancer-manager>
SetHandler balancer-manager
Order Deny,Allow
# Deny from all
Allow from all
</Location>
5。希望你能走。
更新:
sudo aptitude download libxml2
sudo ar -xf libxml2_2.7.8.dfsg-5.1ubuntu4_amd64.deb
以下文件将从ubuntu包中解压。data.tar.gz debian-binary libxml2_2.7.8.dfsg-5.1ubuntu4_amd64.deb
# rm libxml2_2.7.8.dfsg-5.1ubuntu4_amd64.deb control.tar.gz
# tar xf data.tar.gz
# cd usr/lib/x86_64-linux-gnu/
# ls
以下文件将在那里
libxml2.so。2 libxml2.so.2.7.8
# mv * /usr/lib/x86_64-linux-gnu/
# cp /usr/lib/x86_64-linux-gnu/libxml2.so.2* /usr/lib/
# /etc/init.d/apache2 start
- 启动web服务器apache2 [OK]
相关文章:
- 在node.js中设置Apache环境变量
- 一种将Apache Thrift JS绑定与Backbone.JS一起使用的方法
- 在此服务器上找不到请求的-表单验证(位于localhost端口80的Apache/2.4.9(Win32)PHP/5.5
- 如何在方向更改时重新调整/排列布局(Apache Cordova)
- 如何将 “onchange” SimpleAttributeModifier 添加到 Apache Wicket 中的
- 在引导程序中从 HTML 表单执行 Python (CGI) 文件.带有Apache Server的JS
- 带有Apache Cordova的Android应用程序
- Apache Cordova:在不启动浏览器应用程序的情况下运行Cordova运行浏览器
- Node.js Apache重写规则的版本
- 在 Apache 中使用 ngRoute 进行角度路由深度链接
- 用户在noConflict mod中使用jQuery定义函数
- Apache Thrift Java-Javascript communication
- apache tomcat没有显示图像和js
- Apache Cordova(PhoneGap)2.0中的谷歌adMob,无插件
- 无法在apache上加载javascript文件
- 是(或可以)nodejshttp服务器替代Apache或IIS等大型服务器
- 如何在解析 HTML 资源时使 Apache 区分大小写
- 如何使用页面.js和 Apache 路由/提供静态文件
- Apache poi XSSF创建Excel文件-Create返回格式或文件扩展名无效的空文件
- Apache Cordova可以编译到传统的Windows桌面应用程序(非metro)吗