标签: forwarding

IMAP货运代理

我想知道从IMAP帐户转发邮件的最快和最可靠的方法是什么.

我的大学不允许我们的学生邮箱转发到私人电子邮件帐户(每个人都使用Gmail或Hotmail).这是政治性的,不是技术性的.我们对邮箱有IMAP访问权限.我想有一个通过IMAP和转发下载邮件的服务.它可以很好地扩展它,因此成千上万的学生可以使用它.最后,我想构建一个公共注册页面,并从那里自动处理.

到目前为止,我已经制作了一个不错的PHP脚本,可以连接,下载标题和正文部分,并将它们联系在一起.我有两个问题.

1)我正在下载所有类型的零件,并将它们重新粘在一起.我希望每个奇异的附加文件,奇怪的编码文本和每种类型的标题都能存活下来.我甚至不确定我有完整的标题.

2)to:电子邮件地址成为私人电子邮件地址,而不是原始学生的电子邮件地址.我认为这是蹩脚的,并且在搜索和存档方面不方便.

PHP脚本是可行的吗?有没有使用特定的Linux邮件服务/守护进程的技巧?IMAP是否有"前进"命令,我失踪了吗?

email imap web-services web-applications forwarding

6
推荐指数
1
解决办法
2958
查看次数

使用Google Chrome webRequest API进行简单转发

我正在尝试创建Chrome扩展程序,以帮助我了解Chrome的webRequest API,方法是复制使用此答案所做的操作,但不使用命名空间的实验部分,因为webRequest现在位于Chrome的主干中,所以不再需要.

在我的后台页面中,我有代码:

<!DOCTYPE html>
<html>
  <head>
  <script>
function interceptRequest(request) {
    return { redirectUrl: 'http://www.yahoo.com' }
}
chrome.webRequest.onBeforeRequest.addListener(interceptRequest, { urls: ['*://*.google.com/*'] }, ['blocking']);
  </script>
  </head><body></body>
</html>
Run Code Online (Sandbox Code Playgroud)

在我的清单文件中,我有:

{
  "name": "My Extension",
  "version": "0.1",
  "background_page": "background.html",
  "permissions" : [
     "webRequest",
     "webRequestBlocking",
     "*://*/*"
  ]
}
Run Code Online (Sandbox Code Playgroud)

根据之前提出的问题,当我访问https://www.google.com并加载我的扩展程序时,我应该转发到http://www.yahoo.com,但是,https://www.google.com加载没有任何转发效果.为了简单地使用Chrome中的webRequest API将用户从一个URI转发到另一个URI,我需要做什么?

google-chrome forwarding webrequest google-chrome-extension

6
推荐指数
1
解决办法
3830
查看次数

用于https的socat端口转发

我可以socat像这样使用端口转发:

socat TCP4-LISTEN:8080 TCP4:123.456.789.12:80
Run Code Online (Sandbox Code Playgroud)

在这种情况下,它完美地工作:all http-requests localhost:8080将被重定向到123.456.789.12:80.

但是我怎样才能将这种转发用于请求https

更新:我需要socatFirefox和远程服务器之间的单个进程.socat只是一个转发器(代理重定向器),仅此而已.像这样的东西:

Firefox -> socat -> server
       ------------>
           https
Run Code Online (Sandbox Code Playgroud)

https forwarding socat

6
推荐指数
3
解决办法
2万
查看次数

std::将右值引用转发到 lambda?

考虑以下两个片段:

附件一

template<typename CalcFuncT>
int perform_calc(CalcFuncT&& calcfunc)
{
    precalc();
    int const calc = calcfunc();
    postcalc();
    return calc;
}

int main()
{
    perform_calc([]{ return 5 * foobar_x() + 3; }); // toFuture
    perform_calc([]{ return 5 * foobar_y() - 9; }); // toPast
}
Run Code Online (Sandbox Code Playgroud)

附件B

template<typename CalcFuncT>
int perform_calc(CalcFuncT&& calcfunc)
{
    precalc();
    int const calc = std::forward<CalcFuncT>(calcfunc)();
    postcalc();
    return calc;
}

int main()
{
    perform_calc([]{ return 5 * foobar_x() + 3; }); // toFuture
    perform_calc([]{ return 5 * foobar_y() - …
Run Code Online (Sandbox Code Playgroud)

c++ lambda forwarding rvalue-reference c++11

5
推荐指数
1
解决办法
1114
查看次数

DNS 映射到子文件夹

我有一个用例,其中我的 DNS 域名为 www.example.com ,它指向 test.com/abcd 。

现在我想再创建一个 dns 记录,该记录应将 www.example.com/test2 指向 test2.com/abcd。

www.example.com 只是一个域名,我没有在其上运行任何服务器。

subdomain dns redirect cname forwarding

5
推荐指数
1
解决办法
3万
查看次数

选择性转发功能

任务是创建一个单参数函数,该函数转发除了一个(Foo)之外的所有类型(它转换为Bar).

(我们假设存在从Foo到Bar的转换).

以下是使用场景:

template<typename Args...>
void f( Args... args )
{
    g( process<Args>(args)... );
}
Run Code Online (Sandbox Code Playgroud)

(我试图提取/从原来的背景下简化它在这里 -如果我犯了一个错误,请有人告诉我!)

以下是两种可能的实现:

template<typename T>
T&& process(T&& t) { 
    return std::forward<T>(t); 
}

Bar process(Foo x) { 
    return Bar{x}; 
}
Run Code Online (Sandbox Code Playgroud)

和...

template <typename T, typename U>
T&& process(U&& u) {
    return std::forward<T>(std::forward<U>(u));
}

template <typename T>
Bar process(Foo x) {
    return Bar{x};
} 
Run Code Online (Sandbox Code Playgroud)

我有良好的权威(这里),第二个是更好的.

但是,我无法理解给出的解释.我认为这是深入研究C++中一些最黑暗的角落.

我想我缺少理解正在发生的事情所需的机器.有人可以详细解释一下吗?如果挖掘太多,是否有人可以推荐用于学习必要的先决条件概念的资源?

编辑:我想补充一点,在我的特定情况下,函数签名将匹配此页面上的typedef-s之一.也就是说,每一个论点将是要么PyObject*(与PyObject作为一个普通的C结构)或一些基本的C类一样const char*,int,float.所以我的猜测是轻量级实现可能是最合适的(我不是过度推广的粉丝).但我真的很想获得正确的思维方式来解决这些问题.

c++ forwarding perfect-forwarding c++11

5
推荐指数
1
解决办法
279
查看次数

反向代理 lighttpd https 不起作用

我的服务器上运行着多个 Tomcat。我使用 lighttpd 来反向代理不同域的传入请求。到目前为止,我只使用了 http 而没有使用 https,这个配置对我有用:

$HTTP["host"] == "my.domain.com" {
    proxy.server  = ( "" => ( (
            "host" => "127.0.0.1",
            "port" => 8080
    ) ) )
}
Run Code Online (Sandbox Code Playgroud)

但是当我尝试相同并且仅将端口更改为 https 端口时,我只看到一个空白页面。我需要做什么才能将流量重定向到使用 https 的 Tomcat。

https proxy tomcat forwarding lighttpd

5
推荐指数
1
解决办法
629
查看次数

类模板的模板参数推导的陷阱

我正在阅读有关类模板的模板参数推导的论文http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0091r3.html。这个功能是 C++17 标准中的,有些事情让我感到困惑。

template <typename T>
class Something {
public:

    // delete the copy and move constructors for simplicity
    Something(const Something&) = delete;
    Something(Something&&) = delete;

    explicit Something(T&&) { ... }
    explicit Something(const T&) { ... }

    template <typename U, typename EnableIfNotT<U, T>* = nullptr>
    Something(U&&) { ... }
};
Run Code Online (Sandbox Code Playgroud)

鉴于上面的代码,如果有人尝试像这样实例化上述模板的实例

auto something = Something{std::shared_ptr<int>{}};
Run Code Online (Sandbox Code Playgroud)

右值引用重载总是会被调用吗?由于考虑扣除的过载集是

template <typename T>
Something<T> F(T&&) { ... }
template <typename T>
Something<T> F(const T&) { ... }
template <typename T, typename U, …
Run Code Online (Sandbox Code Playgroud)

c++ templates forwarding forwarding-reference c++17

5
推荐指数
1
解决办法
284
查看次数

Traefik v2.1.4 - 如何创建静态路由并重定向到特定主机和端口

我是 Traefik v2.1.4 的初学者。我在 docker 容器中使用。我正在尝试设置静态路由。我找到了一些使用 toml 配置文件的示例。

[providers]
[providers.file]
[http]
    [http.routers]
        [http.routers.netdata]
            rule = "Host(`netdata.my-domain.com`)"
            service = "netdata"
            entrypoint=["http"]

    [http.services]
          [http.services.netdata.loadbalancer]
            [[http.services.netdata.loadbalancer.servers]]
              url = "https://192.168.0.2:19999"
Run Code Online (Sandbox Code Playgroud)

按照这个例子,我想将它转换为我的 docker-compose 的 docker 标签。

我的 docker-compose 文件:

version: "3.7"
services:

  traefik:
    image: traefik:v2.1.4
    container_name: traefik
    restart: always
    command:
      - "--log.level=DEBUG"
      - "--api.insecure=false"
      - "--providers.docker=true"
      - "--providers.docker.exposedbydefault=false"
      - "--entrypoints.web.address=:80"
      - "--entrypoints.websecure.address=:443"
      - "--certificatesresolvers.letsresolver.acme.tlschallenge=true"
      - "--certificatesresolvers.letsresolver.acme.email=my-email@domain.com"
      - "--certificatesresolvers.letsresolver.acme.storage=/letsencrypt/acme.json"
    labels:
      - "traefik.enable=true"
      # middleware redirect
      - "traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https"
      # global redirect to https
      - "traefik.http.routers.redirs.rule=hostregexp(`{host:.+}`)"
      - "traefik.http.routers.redirs.entrypoints=web" …
Run Code Online (Sandbox Code Playgroud)

reverse-proxy forwarding docker-compose traefik

5
推荐指数
1
解决办法
7814
查看次数

Python websocket 服务器转发来自其他 websocket 服务器的消息

我从 websocket 服务器 (A) 接收实时数据。我想使用另一个 websocket 服务器(B)转发该数据,该服务器将用于与客户端(Web 应用程序)共享数据。

而不是在 websocket 服务器 (A) 上进行中继。每当我从“A”接收数据时,我都会使用“B”将其广播给客户端。

SubscribeToServerA()
While True :
   Server_A_Callback() :
      BroadcastDataViaServerB()
Run Code Online (Sandbox Code Playgroud)
  1. 这种方法的可行性如何?
  2. 当我在 Server_A_Callback() 中接收数据时,将数据存储在某个数据库中是个好主意吗?

我是 Websockets 和其他东西的新手,欢迎使用任何其他方法和建议

python forwarding websocket

5
推荐指数
0
解决办法
411
查看次数