Change log
= 1.4.3 =
- Fixed: 403 forbidden error when downloading exported packages.
- Fixed: Performance issues on user meta import.
- Fixed: Redundant user metas imported.
- Fixed: Overwritten user level and capabilities during import.
Fixed package download issues
Prime Mover uses two major approach when downloading packages. First one is using symlink
method. This works by creating a symlink to the protected package. And user clicks and downloads the package using the symlink provided. There is no PHP processing done and this is faster than relying on PHP for serving the download.
The second method is serving the download via PHP resumable downloads. This does not use any symlink and works by reading the file and serving them chunk by chunk to the user (using PHP). This is the most versatile method that will work with any server (as long as PHP readfile
function is enabled).
Some servers disallow symlinks function for security reasons and some does not render it correctly. For example some hosting allows to create symlinks however it returns 403 forbidden error when accessing the file via browser. Prime Mover 1.4.3 adds a check to make sure this won’t happen. If 403 forbidden error will occur due to symlink downloading – it will revert to PHP resumable downloads.
Fixed performance issues and bugs on user meta restore
Prime Mover exports and restore user data since version 1.1.0. However in older versions, it will export ALL user metas belonging to an exported user. While this may seem sensible – it is not absolutely necessary and could create performance issues or even bugs.
For example – WordPress stores user capabilities in user meta table e.g. wp_capabilities
and wp_user_level
. This must be exported and restored otherwise user capabilities are broken on target site. However in multisite – this is a little bit tricky. Say a user X is an administrator of Site 1, editor of Site 2 , 3, 4 and author of Site 5. In older version, Prime Mover exports all capabilities and other db prefix specific metas of third party plugins.
Supposing only Site 2 is exported and restored to target site. Prime Mover 1.4.3 now only exports capabilities and user metas specific to Site 2 for that user. It no longer exports all user metas because simply it is not needed by the target site.
In our tests using a user with too many users – this cuts the restore time to almost 3 times improvement! Since only site specific capabilities/roles/prefixes are exported – this fixes all bugs related on this.
Feedback? Suggestions?
We would love to hear from you. Please get in touch with us!