First you need to ensure that the BP Weapon Base is Spawned by the Server only.
If you make a breakpoint (F9) on the node that spawns the BP you should see “Server” written on background of the BP when it hits the breakpoint"
Then you need to ensure that the Client that calls Fire_on_server owns the BP weapon Base it is calling from.
You should see an entry in the log saying “No owning connection for actor…” if this is the issue.
You can set the Owner while you spawn it by the Server. The owner should be the owner PlayerController or the Character that own the Weapon. When the owner Possess the Character it will then also own the Weapon.