Express 已部署的网页包-引导程序不工作-DigitalOcean

Express 已部署的网页包-引导程序不工作-DigitalOcean,express,nginx,webpack,digital-ocean,bootstrap-4,Express,Nginx,Webpack,Digital Ocean,Bootstrap 4,我正在部署我的第一个网页应用程序。我可能有一些误解。 我的(简单)应用程序是Webpack2+Bootstrap4+ReactJS。 我跑了npm运行产品(优化序列)。 我的“dist”文件夹现在包含我在下面列出的文件和文件夹。 我使用DigitalOcean,Nginx,express。。。部署我的网页包应用程序。 我将我的网页包应用程序上载到我的DigitalOceantop目录中的目录中。 在名为“wp2-bs4-rjs”的目录中,我放置了: index.html,app.bundle.j

我正在部署我的第一个网页应用程序。我可能有一些误解。
我的(简单)应用程序是Webpack2+Bootstrap4+ReactJS
我跑了<代码>npm运行产品(优化序列)。
我的“dist”文件夹现在包含我在下面列出的文件文件夹
我使用DigitalOceanNginxexpress。。。部署我的网页包应用程序。
我将我的网页包应用程序上载到我的DigitalOceantop目录中的目录中。
在名为“wp2-bs4-rjs”的目录中,我放置了:
index.htmlapp.bundle.jsapp.cssimgs(文件夹)。
此“wp2-bs4-rjs”目录还包含:
package.json(用于express)和node_模块文件夹(用于express,用于部署)。
我假设
我的网页应用程序不使用
节点模块
文件夹,
现在已对其进行了优化(?)。
重要:当我在我的计算机的本地主机中使用网页包开发服务器时,
Bootstrap&jQuery工作正常(一切正常)。
但是,当我在线查看我的网页应用程序,我会看到文本及其背景图像,
但是没有自举影响。
由于我看到了我的背景图像和我的css样式,我知道app.css文件正常运行。
同样,因为我看到了我的文本,我知道我的app.bundle.js文件部分工作正常。
但是,由于某些原因,我的app.bundle.js文件中的引导程序jQuery无法工作。
我的JavaScript控制台网络选项卡中没有错误。
你对我做错了什么有什么想法吗?
这里是它的URL
我的网页应用程序使用反向代理在我的的本地主机端口3000上提供。
-————————————————
谢谢你,MLR
===========================================================================================================================
更新:我尝试将几个节点包安装为依赖项
看看这是否有什么不同。它没有
而不是

安装在myDigitalOcean服务器和my计算机的网页开发服务器(网页包项目)中:
“babel cli”:“^6.24.1”、“babel-preset-es2015”:“^6.24.1”、“babel-preset-react”:“^6.24.1”、“bootstrap”:“^4.0.0-alpha.6”、“express”:“^4.15.3”、“jquery”:“^3.2.1”、“react”:“^15.6.1”、“react dom”:“^15.6.1”、“tether”:“^1.4.0”、“webpack”:“^3.0.0”
-————————————————
未安装在我的DigitalOcean服务器>网页包项目中,
但是安装在我的计算机的网页开发服务器版本中:
ejs、css加载器、样式加载器、sass加载器、节点sass、提取文本网页包插件、网页包开发服务器、巴贝尔加载器、巴贝尔核心、rimraf、文件加载器、图像网页包加载器、libpng、引导加载器、解析url加载器、url加载器、导入加载器导出加载器、postcss postcss加载器、purifycss网页包、purify css
===========================================================================================================================
更新:由于节点模块文件夹与app.bundle.js位于相同的
目录中。。。
&所有其他(非图像)文件。。。
app.bundle.js中,我尝试将
/node\u模块的所有出现的更改为
node\u模块。

它没有起作用。虽然我的问题可能是错误的组合
===========================================================================================================================
你好,奥洛尔,这是我的网页配置(如你所问)。


请将您的网页上传到我的邮箱,谢谢。我还添加了一个更新;失败的实验结果可能会有所帮助。它涉及到我的node_modules文件夹相对于app.bundle.js文件的位置。。。拼写检查程序会不断从您的姓名中删除第一个“o”。您不需要将所有开发人员依赖项安装到服务器上。这个包应该包含你需要的所有东西。我可以在您的包中看到jQuery和Bootstrap。我从未使用过ProvidePlugin,但在webpack中使用{test:require.resolve('jQuery')处理jQuery,使用:['expose loader?jQuery','expose loader?$']},更详细的信息:olore,我从您的回复中得知,您没有看到严重错误。感谢您确认,“我的网页包项目(dist文件夹内容)不再需要它的node_modules文件夹……而且,它不需要它的package.json文件,……我只是指我的网页包项目需要什么,而不是我的服务器需要什么。--正如我在原始问题中提到的,“当我在计算机的本地主机中使用网页包开发服务器时,一切正常。”——我将尝试你提供的链接材料。Thnxolore(请参阅我的上述评论。然后阅读以下内容),我上传了我的完整专业版
'use strict';
const webpack = require('webpack');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const path = require('path');
const glob = require('glob');
const PurifyCSSPlugin = require('purifycss-webpack');

const isProd = process.env.NODE_ENV === 'production';
const cssDev = ['style-loader','css-loader', 'resolve-url-loader', 'sass-loader'];
const cssProd = ExtractTextPlugin.extract({
    fallback: 'style-loader',
    use: ['css-loader','sass-loader'],
    publicPath: '/dist'
});
let cssConfig = isProd ? cssProd : cssDev;

module.exports = {
    entry: {
        app: './src/app.js'
    },
    output: {
        path: path.resolve(__dirname, 'dist'),
        filename: '[name].bundle.js'
    },
    resolve: { extensions: ['.js','.jsx','.html','.css','.scss'] },
    module: {
        rules: [{
                test: /\.scss$/,
                use: cssConfig// potentially the ExtractTextPlugin.extract(...)
            },{
                test: /\.js$/,
                use: 'babel-loader',
                exclude: /node_modules/
            },{
                test: /\.(jpe?g|png|gif|svg)$/i,
                use: [
                    'file-loader?name=[name].[ext]&outputPath=imgs/&publicPath=./',
                    'image-webpack-loader'
                ]
            },{
                test: /\.(woff2?|svg)$/,
                use: 'url-loader?limit=10000&name=fonts/[name].[ext]'
            },{
                test: /\.(ttf|eot)$/,
                use: 'file-loader&name=fonts/[name].[ext]'
            },{
                test: /bootstrap[\/\\]dist[\/\\]js[\/\\]umd[\/\\]/,
                use: 'imports-loader?jQuery=jquery'
            }
        ],
    },
    devServer: {
        contentBase: path.join(__dirname, 'dist'),
        compress: true,
        hot: true,
        open: true,
        stats: 'errors-only'
    },
    plugins: [
        new HtmlWebpackPlugin({
            title: 'ReactJS Webpack Bootstrap',
            hash: true,
            template: './index.html',
            minify: {collapseWhitespace: true}
        }),
        new ExtractTextPlugin({
            filename: '[name].css',
            disable: !isProd,
            allChunks: true
        }),
        new PurifyCSSPlugin({
            paths: glob.sync(path.join(__dirname, 'index.html')),
            purifyOptions: { minify: true }
        }),
        new webpack.HotModuleReplacementPlugin(),
        new webpack.NamedModulesPlugin(),
        new webpack.ProvidePlugin({
            $: "jquery",
            jQuery: "jquery",
            "window.jQuery": "jquery",
            Tether: "tether",
            "window.Tether": "tether",
            Alert: "exports-loader?Alert!bootstrap/js/dist/alert",
            Button: "exports-loader?Button!bootstrap/js/dist/button",
            Carousel: "exports-loader?Carousel!bootstrap/js/dist/carousel",
            Collapse: "exports-loader?Collapse!bootstrap/js/dist/collapse",
            Dropdown: "exports-loader?Dropdown!bootstrap/js/dist/dropdown",
            Modal: "exports-loader?Modal!bootstrap/js/dist/modal",
            Popover: "exports-loader?Popover!bootstrap/js/dist/popover",
            Scrollspy: "exports-loader?Scrollspy!bootstrap/js/dist/scrollspy",
            Tab: "exports-loader?Tab!bootstrap/js/dist/tab",
            Tooltip: "exports-loader?Tooltip!bootstrap/js/dist/tooltip",
            Util: "exports-loader?Util!bootstrap/js/dist/util"
        })
    ]
};