# How to Fix Plugin or Theme Upload/Update 500 Errors on OpenLiteSpeed Servers With xCloud

> When a WordPress site on an OpenLiteSpeed (OLS) server fails while uploading or updating a plugin/theme, the issue may be related to incorrect ownership of

When a WordPress site on an OpenLiteSpeed (OLS) server fails while uploading or updating a plugin/theme, the issue may be related to incorrect ownership of OpenLiteSpeed temporary files.

This guide explains how to identify the issue and apply the known fix.

### **Symptoms**

A customer may report one or more of the following:

-   Plugin upload fails
-   Plugin update fails
-   Theme upload fails
-   Theme update fails
-   WordPress shows a 500 Internal Server Error
-   The issue happens during upload/update actions only
-   The site is hosted on an OpenLiteSpeed / OLS stack server

### Example customer message:

 I cannot update the theme. It is showing a 500 error on your server

### Affected Stack

This issue is related to servers using the OpenLiteSpeed (OLS) stack.

It does not usually happen on NGINX stack servers.

In customer-friendly language:

 Your server is using the OpenLiteSpeed stack. This issue is related to OpenLiteSpeed temporary file handling and is not related to Redis or cache settings.

### Error to Look For

Open the server logs in xCloud:

### Server → Logs

Or use the direct server logs URL:

Copy

```
https://app.xcloud.host/server/{server_id}/logs
```

Look for this error:

> Failed to obtain or reinitialize VMemBuf.

### Example:

> 2026-05-13 06:27:02.750619 \[ERROR\] \[269567\] \[192.128.217.123:13925:H2-1\]
> 
> Failed to obtain or reinitialize VMemBuf.

If this error appears while the customer is uploading or updating a plugin/theme, apply the fix below.

### Likely Cause

OpenLiteSpeed uses temporary swap/report files under:

> /tmp/lshttpd/

In some cases, these files or folders may have incorrect ownership. When OpenLiteSpeed cannot write to or reinitialize these temporary buffers properly, WordPress actions such as plugin/theme upload or update can fail with a 500 error.

The fix is to restore ownership to the correct server user:

> xcloud:xcloud

### **Fix**

SSH into the server or use the xCloud **Command Runner**.

### Run:

📄

filename.js

Copy

```
chown -R xcloud:xcloud /tmp/lshttpd/swap

chown -R xcloud:xcloud /tmp/lshttpd/.rtreport*
```

### Using xCloud Command Runner

If you are using the xCloud dashboard:

1\. Open the xCloud dashboard.

2\. Go to Servers.

3\. Select the affected server.

4\. Open Command Runner.

5\. Run the following commands:

chown -R xcloud:xcloud /tmp/lshttpd/swap

chown -R xcloud:xcloud /tmp/lshttpd/.rtreport\*

6\. Wait for the command to finish.

7\. Ask the customer to test the plugin/theme upload or update again.

### Verification

After applying the fix, ask the customer to retry the same action:

– Upload the plugin again

If successful, the issue is resolved.

Also, check the server logs again and confirm that the same error is no longer appearing during the upload/update attempt:

> Failed to obtain or reinitialize VMemBuf.
