由Webpack Dev Server代理时,Wordpress重定向到本地主机而不是虚拟主机

木乃伊机器人

我试图做一个相对简单的设置:

  • 具有用于HTML的虚拟主机的Apache服务器。
  • Webpack和Webpack Dev Server用于资产的重新加载和生成。

为此,Webpack Dev Server proxies另一台服务器将传递不知道如何处理的请求。

使用基本的python服务器(有效):

  1. http:// localhost:5000上启动python网络服务器
  2. 运行npm start。
  3. Webpack Dev Server启动并使用http:// localhost:9090代理python服务器
  4. 访问http:// localhost:9090并查看python服务器和Webpack资产的HTML结果。

使用Apache服务器:

  1. 启动Apache服务器。
  2. 运行npm start。
  3. Webpack开发服务器启动并使用http:// localhost:9090代理Apache服务器
  4. 访问localhost:9090,浏览器将自动重定向到http:// localhost并显示“ It works!”。

如果我在浏览器中单独访问http://vhost.name则会看到正确的HTML。我的环境是默认的Apache服务器版本:Mac OSX El Capitan上的Apache / 2.4.16(Unix)。

package.json

"scripts": {
  "test": "node server.js",
  "start": "npm run start-dev-server",
  "start-dev-server": "webpack-dev-server 'webpack-dev-server/client?/' --host 0.0.0.0 --port 9090 --progress --colors",
  "build": "webpack"
},

webpack.config.js

/*global require module __dirname*/
var webpack = require('webpack');

module.exports = {
    entry: {
        app: [
            'webpack-dev-server/client?http://localhost:9090',
            'webpack/hot/only-dev-server',
            './src/app.js'
        ]
    },
    output: {
        path: __dirname + '/dist',
        filename: '[name]_bundle.js',
        publicPath: 'http://localhost:9090/dist'
    },
    devServer: {
        historyApiFallback: true,
        proxy: {
            // Python server: works as expected at localhost:9090
            // '*': 'http://localhost:5000'

            // Apache virtual host: redirects to localhost instead of
            // serving localhost:9090
            '*': 'http://vhost.name'
        }
    },
    plugins: [
        new webpack.HotModuleReplacementPlugin()
    ]
};

httpd-vhosts.conf

<VirtualHost vhost.name:80>
    DocumentRoot "/Path/To/vhost.name"
    ServerName vhost.name
        <Directory "/Path/To/vhost.name">
            Options FollowSymLinks Indexes MultiViews
            AllowOverride All
            # OSX 10.10 / Apache 2.4
            Require all granted
        </Directory>
</VirtualHost>

主机

127.0.0.1   localhost

127.0.0.1   vhost.name
木乃伊机器人

WordPress使用规范的URL来帮助规范来自不同来源的内容的URL

[Y]您无法控制与您链接的人,第三方在键入或复制粘贴您的URL时会出错。规范的URL退化具有传播的方式。也就是说,站点A使用非规范URL链接到您的站点。然后,站点B看到站点A的链接,并将其复制粘贴到他们的博客中。如果您允许将非规范的URL留在地址栏中,则人们会使用它。这种用法对您的搜索引擎排名不利,并且会破坏组成Web站点的链接网络。通过重定向到规范URL,我们可以帮助阻止这些错误的传播,并至少为人们链接到您的博客时可能犯的错误生成301重定向。

尝试代理时,此重写将删除Webpack-dev-server端口号。解决方案是添加您的theme / functions.php:

remove_filter('template_redirect', 'redirect_canonical');

我们显然不希望它在实时站点上运行,因此请根据环境将变量添加到wp_config.php中进行设置:

wp-config.php

// Toggle to disable canonical URLs to allow port numbers.
// Required for Webpack-dev-server proxying.
define('DISABLE_CANONICAL', 'Y', true);

yourtheme / functions.php

// Hack for Webpack dev server
if (DISABLE_CANONICAL == 'Y') {
    remove_filter('template_redirect', 'redirect_canonical');
}

我在浏览器“缓存”先前的URL重定向时遇到了问题,因此当您进行更改时,它可能不会立即显示。尝试使用其他浏览器以隐身模式打开URL,或重新启动Webpack和Apache服务器。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

webpack-dev-server找不到本地主机

来自分类Dev

为什么将/ etc / hosts中的虚拟主机服务器名称和本地域名更改为* .dev强制重定向到HTTPS?

来自分类Dev

Webpack Dev Server:支持多个主机

来自分类Dev

无法访问由vagrant上的webpack-dev-server启动的网页

来自分类Dev

webpack-dev-server不提供由HtmlWebPackPlugin生成的index.html

来自分类Dev

带旁路代理的Webpack-dev-server

来自分类Dev

webpack-dev-server代理无效

来自分类Dev

虚拟主机-所有主机均重定向到WAMP本地主机的“主页”页面

来自分类Dev

Webpack:从webpack.config.js到webpack.dev.js

来自分类Dev

webpack-dev-server vs nodemon

来自分类Dev

webpack-dev-server重建非常慢

来自分类Dev

使用webpack-dev-server的错误

来自分类Dev

本地主机连接由运行 angularjs webpack 应用程序的对等、docker 容器(ubuntu)重置

来自分类Dev

在Linux中,配置虚拟主机和本地主机重定向到xampp文件夹

来自分类Dev

在Linux中,配置虚拟主机和本地主机重定向到xampp文件夹

来自分类Dev

webpack-dev-server中的代理websockets连接

来自分类Dev

当我使用.dev域扩展名时,虚拟主机无法按预期工作

来自分类Dev

webpack-dev-server错误,出现“找不到命令:webpack-dev-server”错误

来自分类Dev

Webpack编译,但webpack-dev-server的配置不相同

来自分类Dev

使用webpack-dev-server读取webpack资产json

来自分类Dev

Workbox Webpack插件和Webpack Dev Server问题

来自分类Dev

Webpack和webpack-dev-server安装错误

来自分类Dev

webpack-dev-server 注入 CSS webpack 不会

来自分类Dev

在本地主机上出现 wordpress 分页错误,但在 dev 上工作正常

来自分类Dev

CopyWebpackPlugin在“运行”“ webpack-dev-server”时失败

来自分类Dev

wordpress Live网站重定向到本地主机

来自分类Dev

iptables重定向到本地主机?

来自分类Dev

PHP重定向到本地主机

来自分类Dev

重定向到/ dev / null

Related 相关文章

  1. 1

    webpack-dev-server找不到本地主机

  2. 2

    为什么将/ etc / hosts中的虚拟主机服务器名称和本地域名更改为* .dev强制重定向到HTTPS?

  3. 3

    Webpack Dev Server:支持多个主机

  4. 4

    无法访问由vagrant上的webpack-dev-server启动的网页

  5. 5

    webpack-dev-server不提供由HtmlWebPackPlugin生成的index.html

  6. 6

    带旁路代理的Webpack-dev-server

  7. 7

    webpack-dev-server代理无效

  8. 8

    虚拟主机-所有主机均重定向到WAMP本地主机的“主页”页面

  9. 9

    Webpack:从webpack.config.js到webpack.dev.js

  10. 10

    webpack-dev-server vs nodemon

  11. 11

    webpack-dev-server重建非常慢

  12. 12

    使用webpack-dev-server的错误

  13. 13

    本地主机连接由运行 angularjs webpack 应用程序的对等、docker 容器(ubuntu)重置

  14. 14

    在Linux中,配置虚拟主机和本地主机重定向到xampp文件夹

  15. 15

    在Linux中,配置虚拟主机和本地主机重定向到xampp文件夹

  16. 16

    webpack-dev-server中的代理websockets连接

  17. 17

    当我使用.dev域扩展名时,虚拟主机无法按预期工作

  18. 18

    webpack-dev-server错误,出现“找不到命令:webpack-dev-server”错误

  19. 19

    Webpack编译,但webpack-dev-server的配置不相同

  20. 20

    使用webpack-dev-server读取webpack资产json

  21. 21

    Workbox Webpack插件和Webpack Dev Server问题

  22. 22

    Webpack和webpack-dev-server安装错误

  23. 23

    webpack-dev-server 注入 CSS webpack 不会

  24. 24

    在本地主机上出现 wordpress 分页错误,但在 dev 上工作正常

  25. 25

    CopyWebpackPlugin在“运行”“ webpack-dev-server”时失败

  26. 26

    wordpress Live网站重定向到本地主机

  27. 27

    iptables重定向到本地主机?

  28. 28

    PHP重定向到本地主机

  29. 29

    重定向到/ dev / null

热门标签

归档