NGINX 代理到 WordPress 网站

2023-11-22

我有一个静态服务的站点(使用 nginx)。 我想在 /blog 文件夹下托管一个 WordPress 博客(托管在不同的实例上)。 使用 nginx 代理时:

location /blog/ {
   proxy_set_header X-Is-Reverse-Proxy "true";
   proxy_set_header Host $host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header X-Forwarded-For $remote_addr;
   proxy_pass http://55.555.55.555;
}

和以下 wp-config.php:

define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] . '/');
define('WP_HOME', 'http://SOMESITE.com/blog/');

所有文件来自wp-content (and wp-includes)没有被正确提供,因为它们正在被搜索http://SOMESITE.com/wp-content/*代替http://SOMESITE.com/blog/wp-content/*.

添加一些额外的代理规则没用, ex:

location ~* (\/wp-content) {
   proxy_set_header X-Is-Reverse-Proxy "true";
   proxy_set_header Host $host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header X-Forwarded-For $remote_addr;
   proxy_pass http://55.555.55.555;
}

nor重新定义 wp-config.php:

define('WP_SITEURL', 'http://SOMESITE.com/blog/');

会喜欢任何想法。 我也很确定这是一个常见的用例,但在这里找不到任何工作技巧。

THX.


我终于得到了一个适用于 WordPress 博客的 NGINX 反向代理!

我的设置是由 NGINX 在端口 8080 上提供服务的 WordPress 站点和在子目录“blog”上提供 WordPress 博客的默认站点(在端口 80 上)。 (例如。http://www.example.com/blog).

在我的“默认站点”NGINX 配置中,我定义了以下反向代理位置:

location ^~ /blog/ {
  proxy_pass http://127.0.0.1:8080/;
  proxy_set_header Host $http_host;
  proxy_set_header X-Forwarded-Host $http_host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header X-Forwarded-Proto $scheme;
}

在 wp-config.php 中我做了以下修改:

/** set the site URL */
define('WP_HOME','http://www.example.com/blog');
define('WP_SITEURL','http://www.example.com/blog');

/** Fix to get the dashboard working with the reverse proxy.*/
$_SERVER['REQUEST_URI'] = str_replace("/wp-admin/", "/blog/wp-admin/",  $_SERVER['REQUEST_URI']);

为了完整起见,以下是 WordPress 博客的基本 NGINX 配置:

server {
    listen 8080;
    listen [::]:8080;
    server_name example.com;
    root /var/www/blog;
<...>
    location / {
         index index.php 
         try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
         include fastcgi.conf;
         fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
         fastcgi_intercept_errors on;
         fastcgi_index index.php;
    }
}

版本:

  • 乌班图18.04
  • NGINX 版本 1.4
  • PHP 7.2
  • WordPress 4.8.5
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NGINX 代理到 WordPress 网站 的相关文章

  • WordPress Symfony 共存

    我们有一个在 Symfony 上运行的网站 它是由比我更有能力的人开发的 不过 我对 WordPress 非常熟悉 并将在该网站上安装一个博客 目前 该网站的根运行在 Symfony 上 但我希望 WordPress 能够接管 而不必触及
  • nginx server_name 在流块内可能吗?

    目前设置如下 stream server listen 9987 udp server name subdomain EXAMPLE com this line is resulting in an error proxy pass loc
  • 如何通过代理将套接字连接到http服务器?

    最近 我使用 C 语言编写了一个程序 用于连接到本地运行的 HTTP 服务器 从而向该服务器发出请求 这对我来说效果很好 之后 我尝试使用相同的代码连接到网络上的另一台服务器 例如 www google com 但我无法连接并从网络中的代理
  • 常规请求期间 Django AJAX 请求未通过

    我有一个带有登录网页的 Django 站点 当提交页面上的登录表单时 它会执行登录视图 该视图会在其中运行一个需要很长时间处理 30秒左右 的函数 因此 为了在登录期间向客户端显示进度 一旦提交表单 登录页面上的 JS 函数就会开始向服务器
  • C#中如何通过Proxy访问互联网

    我正在使用 C 设计一个 Windows 窗体应用程序 当连接到互联网时 该应用程序可以顺利执行其功能 但当我们在学院尝试该应用程序时 真正的问题就开始了 我们的学院使用代理网关连接到网络 代理服务器是192 168 120 5和代理端口8
  • nginx位置正则表达式,匹配多次

    如何在 nginx 位置正则表达式中多次匹配 看来 x x 语法永远不起作用 例如 location abc w 1 3 从来不工作 您必须引用包含以下内容的位置 or 人物 location abc w 1 3 否则 nginx 将其解析
  • WordPress 管理栏未显示在网站前端

    请问有人可以帮我解决这个问题吗 WordPress 管理栏未显示在我网站的前端 公共可见页面 上 它显示我何时在后端登录 即仪表板 用户设置正常 设置为在查看站点时显示管理栏 我尝试停用 然后重新激活 已安装的插件 但仍然没有显示 只是背景
  • 在 Woocommerce 的单个产品页面上显示特定的自定义产品属性

    我找到了以下代码 https isabelcastillo com woocommerce product attributes functions在产品详细信息页面上显示所有自定义属性 具有我需要的特定条形设计 代码的工作方式就像一个魅力
  • 连接到上游时 Nginx 错误:(13:权限被拒绝)

    我在我的中收到此错误nginx error log file 2014 02 17 03 42 20 crit 5455 0 1 connect to unix tmp uwsgi sock failed 13 Permission den
  • Beanstalk 部署忽略 .ebextensions 中的 nginx 配置文件

    我在单实例 Elastic Beanstalk 环境中托管 Java Web 应用程序 并添加了几个 ebextension 文件 这些文件在每次部署时成功为我创建配置文件 然而 我无法找到一种方法让 Beanstalk 在 etc ngi
  • Kubernetes Ingress 在 nginx 反向代理后面运行

    我已经在可以从互联网访问的服务器上安装了 minikube 我创建了一个可用的 kubernetes 服务 gt kubectl get service myservice NAME CLUSTER IP EXTERNAL IP PORT
  • Autowired spring bean 不是代理

    我正在开发一个连接到 MySQL 数据库的非常小的应用程序 我正在尝试创建表记录 但收到 没有正在进行的事务 我已经准备好了所有正确的东西 服务接口 MyService 及其实现 MyServiceImpl 我已经用 Service 注释了
  • 单击文件下载后,成功后使用 AJAX 重定向到另一个页面

    In my WordPress project my Download button containing a zip file which onClick should be downloaded So the HTML producin
  • 如何修复 Nginx 自动 301 重定向到带有尾部斜杠的相同 URL?

    当我尝试将 Web 应用程序的子目录中的索引文件访问到相同的 URL 但附加了斜杠 时 Nginx 出现了不良行为 它正在重新路由请求 我有一个简单的 Web 应用程序 其中设置了一个根目录和其中的许多子目录 每个子目录中都有一个 inde
  • WordPress WooCommerce - 使用 WC_Cart 类将可变产品添加到购物车

    我正在尝试将可变产品添加到 WordPress 插件 WooCommerce 的购物车中 到目前为止 我已经能够添加单一 简单的产品 woocommerce gt cart gt add to cart product id quantit
  • 我的设置未保存在 WordPress 主题选项页面中

    我正在尝试创建一个基于 WordPress 设置 API 的主题选项页面 当我在浏览器中检查 options php 页面时 例如http mysite com wordpress wp admin options php http mys
  • 将具有值的产品属性添加到 Woocommerce 中的产品

    我正在使用此代码添加自定义属性 attributes array array name gt Size options gt array S L XL XXL position gt 1 visible gt 1 variation gt
  • Visual Studio 错误:(407:需要代理身份验证)

    我位于需要凭据的公司代理服务器后面 我一直在尝试连接到 TFS 服务器 在 tfspreview com 上 微软 Visual Studio 专业版 2012最后2个小时没有成功 每次尝试都会遇到此错误 当我启动集成浏览器时 它工作正常
  • nginx 上的多个网站和可用网站

    通过 nginx 的基本安装 您的sites available文件夹只有一个文件 default 怎么样sites available文件夹的工作原理以及如何使用它来托管多个 单独的 网站 只是为了添加另一种方法 您可以为您托管的每个虚拟
  • 从 cocoa 编辑系统偏好设置

    有没有办法使用可可以编程方式编辑系统首选项 是否需要一些框架 我需要这样做来更改全局代理设置 另外 我的应用程序是沙盒的 有关于如何执行此操作的示例代码吗 感谢您的帮助 您正在寻找系统配置框架 但这并不容易 我认为沙盒应用程序不可能这样做

随机推荐

  • Mono 兼容的依赖注入框架

    Which 依赖注入框架兼容 并经过测试 Mono2 4 2 3 运行时 发行说明 温莎城堡 is
  • Fragment 元素中的 Fragment onClick 方法

    我读了很多关于片段的文章 但我仍然对如何做什么感到困惑 我有一个 MainActivity 它并排显示两个片段 在其中一个片段中 我有一个按钮 并在该按钮的片段布局 XML 中定义 android onClick buttonClicked
  • 使用 wget 递归获取其中包含任意文件的目录

    我有一个 Web 目录 用于存储一些配置文件 我想使用 wget 来提取这些文件并维护它们当前的结构 例如 远程目录如下所示 http mysite com configs vim vim 包含多个文件和目录 我想使用 wget 在客户端上
  • 使用开发依赖项在 Heroku 上部署时尝试从命名空间“Symfony\Bundle\WebProfilerBundle”加载类“WebProfilerBundle”

    我们有一个托管在 Heroku 上的 Symfony 4 3 Web 应用程序 这是一个新的设置我们从未设法让开发模式正常工作 网上有很多类似的问题 但没有一个能解决我们在这里面临的确切症状 该项目是使用命令行创建的 composer cr
  • MySQL InnoDB 数据库恢复

    我必须恢复在 MySQL 5 0 中无意中删除的数据库 通过检查备份文件 我似乎只有 FRM 文件来保存数据库数据 任何人都可以建议这是否是我从备份执行数据库恢复 导入所需的全部内容 或者我还需要提供其他文件来完成此操作吗 frm 文件不是
  • 如何像 Eclipse 一样清理 IntelliJ IDEA 中的项目缓存?

    有时IDE会因为缓存而出现一些错误 在Eclipse中 我们可以使用clean来解决问题 我怎样才能在 IntelliJ 中做到这一点 取决于您正在运行的版本 基本上是一样的 只需转到 File gt 使缓存无效 然后重新启动Intelli
  • 什么是 .exe 文件存根?

    我正在学习如何使用混淆我的程序集 NET反应堆 一种选择是 生成本机 x86 EXE 文件存根 我不明白它的目的 我导入一个程序集 例如 exe 文件 并输出一个经过混淆的 exe 文件 其大小大致相同 如果我检查过 生成本机 x86 文件
  • 在 VS2010 Express 中创建构造函数的代码片段

    VS 2010 Express 版本 适用于 C 中是否有任何现成的代码片段 可以使用选定属性中的参数创建构造函数 当我创建一个新类并编写以下代码时 public class FileDetails public int ID get se
  • 将 C# 控制台应用程序转换为 DLL

    我正在将 Betfair API 从 SOAP 重写为 JSON 并且按照之前的方式开始 将其作为控制台应用程序 然后从任务调度程序或 win 服务中调用 然而现在我被要求用代码做各种不同的工作 我不想为每项工作编写一个控制台应用程序 不同
  • error_code:如何设置和检查errno

    我试图了解在调用设置的 C 函数时应该使用什么类别errno在 Linux 上 我不确定所有可能的错误代码都是由 POSIX 定义的 所以我很想使用system category 但我喜欢稍后在代码中处理通用条件 所以我想做这样的事情 st
  • Flutter 入门屏幕仅一次

    我是 flutter 和 dart 的新手 我正在尝试制作一个带有 3 页的入门屏幕的应用程序 并且当用户已经打开该应用程序一次时 我试图跳过入门屏幕 我见过与共享偏好类似的东西 但我无法使其发挥作用 这是我的入门屏幕 class Onbo
  • 在没有 Maven 或 Gradle 的情况下将 JUnit 5 与 Java 9 结合使用

    说明 我想使用创建一个 JUnit 测试JUnit 5 in 日食 氧气 4 7 1a 此 JUnit 测试应位于名为 Test 的单独 src 文件夹内 然而 由于我是 JUnit 的新手 我遇到了以下问题Java 9 I 不要使用像这样
  • PHP按键值降序对数组进行数字排序[重复]

    这个问题在这里已经有答案了 PHP 中是否有一个选项可以按键值降序对数组进行排序 我知道您可以使用以下命令对键值进行排序ksort 是的krsort fruits array d gt lemon a gt orange b gt bana
  • PySpark:获取数据框中每列的第一个非空值

    我正在处理不同的 SparkDataFrames 其中许多列中有很多 Null 值 我想要得到any one每个列中的非空值 以查看该值是否可以转换为日期时间 我尝试做df na drop first 希望它会删除所有具有空值的行以及剩余的
  • 使用像 bash 管道这样的操作系统进程:发送 STDIN 并获取其 STDOUT

    我正在尝试使用外部过程它读取 STDIN 并写入 STDOUT 我想在 Elixir 中编写与此等效的内容 而不使用外部库或包装脚本 echo foo nkf foo 即发送数据到nkf在 stdin 上 并从返回转换后的结果nkf的标准输
  • LUA 中的随机种子

    我正在编写一个随机化数字的代码 我放math randomseed os time 在一个循环内 代码如下 for i 1 1000 do math randomseed os time j math random i row one u
  • 是否可以为 Android 应用程序提供动画启动器图标? [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我只是好奇 Android 是否支持动画启动器图标 例如 iOS 的日历应用程序始终显示当前日期或图标上有移动的手的时钟 不是一般情况下 安卓有应用程序小部件为了那个原因 某些主屏幕
  • 使用 IEqualityComparer 的建议最佳实践是什么?

    我正在寻找现实世界的最佳实践 其他人可能如何实施具有复杂领域的解决方案 任何时候您考虑使用IEqualityComparer
  • 是否可以重置所有继承的 CSS 属性?

    如何重置 CSS 文件中类的所有继承属性 我需要能够在元素上设置新属性 而预定义属性不会对其产生影响 仅使用 CSS 可以吗 我不是在谈论 CSS 重置 例如 body margin 0px padding 0px 简单的答案 你不能 Un
  • NGINX 代理到 WordPress 网站

    我有一个静态服务的站点 使用 nginx 我想在 blog 文件夹下托管一个 WordPress 博客 托管在不同的实例上 使用 nginx 代理时 location blog proxy set header X Is Reverse P