swashata / wp-webpack-script

💥🔥📦👩‍💻 An easy to use, pre configured, hackable webpack setup & development server for WordPress themes and plugins.
https://wpack.io
MIT License
407 stars 57 forks source link

Asset name with ~ (6G Firewall - 403 error) #1243

Open deeppresentation opened 2 years ago

deeppresentation commented 2 years ago

Would it be possible to remove '~' symbol from asset name? One of my customer of wp plugin, that I sell is complaining about that. Sending an info from him:

We use a bunch of rules in .htaccess to block malicious requests. For more info, please have a look here.
One of these rules is as follow: (# 6G:[REQUEST STRINGS]) RedirectMatch 403 (?i)(~|`|<|>|:|;|,|%|\|\s|{|}|[|]||)

Thank you

swashata commented 2 years ago

Hello,

It surely is possible. I would greatly appreciate a PR and guide you through the process. Basically you'd want the asset name generation to be configurable here in this file

https://github.com/swashata/wp-webpack-script/blob/master/packages/scripts/src/config/WebpackConfigHelper.ts

deeppresentation commented 2 years ago
Hello,Yes, that would be great when the asset name generation is configurable here in this file https://github.com/swashata/wp-webpack-script/blob/master/packages/scripts/src/config/WebpackConfigHelper.tsCan you give me some WhatsApp, messenger or other contact so we can communicate in more direct way so you can quide me?  S pozdravem Tomáš Groulík From: Swashata GhoshSent: Sunday, December 5, 2021 7:34 AMTo: swashata/wp-webpack-scriptCc: Tomáš Groulík; AuthorSubject: Re: [swashata/wp-webpack-script] Asset name with ~ (6G Firewall - 403 error) (Issue #1243) Hello,It surely is possible. I would greatly appreciate a PR and guide you through the process. Basically you'd want the asset name generation to be configurable here in this filehttps://github.com/swashata/wp-webpack-script/blob/master/packages/scripts/src/config/WebpackConfigHelper.ts—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.Triage notifications on the go with GitHub Mobile for iOS or Android.  
Rados51 commented 2 years ago

@deeppresentation

You can use this inside of the wpackio.project.js

webpackConfig: (config, merge, appDir, isDev) => {
  const customRule = {
    optimization: {
      splitChunks: {
        chunks: "all",
        cacheGroups: {
          commons: {
            test: /[\\/]node_modules[\\/]/,
            name(module, chunks, cacheGroupKey) {
              if (isDev) return "vendors";
              const moduleFileName = module
                .identifier()
                .split("/")
                .reduceRight((item) => item);
              const allChunksNames = chunks.map((item) => item.name).join("-");
              return `${cacheGroupKey}-${allChunksNames}-${moduleFileName}`;
            },
            chunks: "all",
            minSize: 0,
          },
        },
      },
    },
  };
  return merge(config, customRule);
}