When attempting to upload a photo, image, picture or avatar in vBulletin, the following error occurred after processing:

Unable to move/copy file

vBulletin Unable to Move/Copy File

Cause

The issue is caused by server which running PHP with Safe Mode restrictions enabled, or previously enabled but now disabled. If a web host is running PHP with Safe Mode enabled, vBulletin needs to know about it, and vice versa. Thus, there are several scenarios that can cause the error:

  1. Install vBulletin on new server with PHP Safe Mode enabled.
  2. Move a vBulletin site from server without PHP Safe Mode to the one with PHP Safe Mode restrictions.
  3. Move a vBulletin site from server with PHP Safe Mode restrictions to the one without.
  4. You’re upgrading from PHP version 5.3 or earlier to PHP version 5.4 or later. PHP Safe Mode is deprecated in PHP 5.3 and removed since PHP 5.4, 5.5 and 5.6.

Resolution

To fix the issue, confirm whether the PHP is running with Safe Mode enabled or not:

php -i | grep safe_mode
Note
If you’re using multiple PHP versions, make sure to call the correct PHP version which runs the vBulletin site.

And if you’re on PHP 5.4, PHP 5.5, PHP 5.6 or later, it’s confirmed that there is no PHP Safe Mode as the feature has been removed.

Next, go to Admin Control Panel -> Settings -> vBulletin Options -> Server Settings and Optimization Options, and set Safe Mode Upload Enabled to Yes (if PHP Safe Mode is ON) or No (if PHP Safe Mode is OFF or if you’re running PHP >= version 5.4).

If you set the “Safe Mode Upload Enabled” to “Yes”, also set the directory value for Safe Mode Temporary Directory. The directory must have 777 permissions (full read/write permissions for everybody). The directory servers as a temporary location which stores the uploaded content such as images and avatars. After the uploads are copied to the database, the content in this temporary directory shall be deleted.

vBulletin Safe Mode Options

In addition, if needed, also set the Attachment Storage Type in Admin Control Panel -> Settings -> Attachments to Database to eliminate possible permissions issue with “File System” storage type.