-
Notifications
You must be signed in to change notification settings - Fork 45
Technical Description and Breakdown
HRCloud2 runs in a web server envirooment. Therefore HRCloud2 requires, at minimum, a LAMP stack with Linux (Ubuntu derivative preferable), Apache2, MySql, PHP7, and WordPress. HRCloud2 also requires STRICT user group, ownership, and permissions over it's controlled directories. It is highly recommended that you read and closely adhere to the "[Installation Instructions] (https://github.com/zelon88/HRCloud2/blob/master/How_To_Install_HRCloud2.txt)."
--HOW IT WORKS--
HRCloud2 takes in multiple user uploaded files at a time and places them in whatever directory is specified in the "config.php" file. The $CloudLoc could be any local/network drive or device-storage attached to the server so long as the server's "www-data" usergroup has read and write access to the $CloudLoc. This means that it is possible for HRCloud2 to situate your user storage directories on specified RAID arrays, external storage, removable storage, or whatever else suits the needs of the end-user.
HRCloud2 stores all operational history in "/var/www/html/HRProprietary/HRCloud2/AppLogs/" by default.
If VirusScanning is enabled, HRCloud2 will scan broad or specific folders depending on each scenario and return information or error messages that are appropriate to the type of security fault being identified. If VirusScanning is disabled HRCloud2 will pass all files and all requests without updating ClamAV or scanning any files or directories. VirusScanning has a major impact on server performance and latency. Each server environment should be manually evaluated to determine if VirusScanning is appropriate or neccesary.
Once the "config.php" file and all specified directories are verified, HRCloud2 verifies the user account being accessed. If WordPress returns a valid user_ID that is 0 (not logged in) HRCloud2 returns a login error. If WordPress returns a user_ID that is 1, HRCloud2 will assume the user is an administrator. If WordPress returns a user_ID of greater than 1 HRCloud2 will assume that the user has a standard user account.
After the user_ID has been verified, HRCloud2 locates and verifies the specific users Cloud directory. If the directory does not exist it is created. Files uploaded by "user_ID 122" are permanently stored in "CloudLocation/user_ID/UserDirectory/FILENAME". Whenever a copy of a file is needed for rework via a command-line too, the permanent file is copied to "/var/www/html/HRProprietary/DATA/user_ID/UserDirectory/FILENAME" so that they are available for rework/download to the user over HTTP, and so that the server can segregate the file and predict the filename later. Temporary user files hosted in the "/DATA" directory older than 15 minutes (as of this writing, it's changed a couple times so far) are automatically removed for security.
HRCloud2 receives inputs from POST data. Depending on the type of POST, HRCloud2 will call upon one or more of it's dependencies to rework the specified file or directory. HRCloud2 uses a combination of AJAX embedded into "Applications/displaydirectorycontents_72216", CuRL, and regular HTML form POSts. HRAI sometimes uses experimental CuRL requests through during operation to detect other nearby HRAI nodes.
About
Getting Started
- Installation Instructions
- Dependency Requirements
- Official App Pack
- Official Game Pack
- Tech Description & Breakdown
Usage
Troubleshooting