Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Apache(或Nginx)能否允许2个应用程序有选择地提供相同的URL?_Php_Wordpress_Apache_Nginx_Silverstripe - Fatal编程技术网

Php Apache(或Nginx)能否允许2个应用程序有选择地提供相同的URL?

Php Apache(或Nginx)能否允许2个应用程序有选择地提供相同的URL?,php,wordpress,apache,nginx,silverstripe,Php,Wordpress,Apache,Nginx,Silverstripe,假设我有一个PHP应用程序WordPress在 这不是一个简单的博客。这是一个大型应用程序,有数千个页面,一个主题中有多个自定义帖子类型和主题,可以处理所有自定义内容 在这个例子中,我想将它与另一个PHP应用程序集成,比如说silverstripe,但它可以是任何允许我分阶段替换的应用程序,因为我不想在部署任何应用程序之前等待几个月,直到一个全新的应用程序完成 问题是,这是一个有10年以上历史的站点,有许多必须维护的遗留URL。这意味着某些URL不允许重定向,我需要任何一个应用程序都能够响应当前

假设我有一个PHP应用程序WordPress在

这不是一个简单的博客。这是一个大型应用程序,有数千个页面,一个主题中有多个自定义帖子类型和主题,可以处理所有自定义内容

在这个例子中,我想将它与另一个PHP应用程序集成,比如说silverstripe,但它可以是任何允许我分阶段替换的应用程序,因为我不想在部署任何应用程序之前等待几个月,直到一个全新的应用程序完成

问题是,这是一个有10年以上历史的站点,有许多必须维护的遗留URL。这意味着某些URL不允许重定向,我需要任何一个应用程序都能够响应当前存在的相同URL。无法添加/wp/或类似的内容。URL必须相同

例如,我们现在有一个由WordPress生成的页面。我想用一个由silverstripe生成的页面来替换它

是否有办法配置Apache或Nginx,以便如果silverstripe应用程序理解请求并为其定义了路由,则该请求将由silverstripe生成,如果它不理解请求,则返回WordPress并由WordPress从同一URL提供服务。不是

谢谢

apachemod_rewrite的passthrough可以处理这个问题。它经常用于URL缩短,用于SEO目的,例如重写/some/francily/long/path to/short,您也可以将/page.html用作/wordpress/page.html,例如:

因此,继续为wordpress实例设置单独的目录,并使用RewriteRule。URL仍将在浏览器的位置栏中显示为“/page.html”,但它将提供“/wordpress/page.html”

更多关于PT的信息:

这将满足您的“从同一URL服务”要求。至于仅在第一个应用程序无法提供服务时提供服务,请查看以下现有线程:

RewriteRule ^/page.html$ /wordpress/page.html [PT]