Document Management System is a self-hosted web-based document management system designed to help organizations store, track, modify, and manage documents on a centralized platform. Features include document sharing, reminders, user management, bulk permissions, document download, document preview, send document email, document audit tracking and multilingual.
Document Management System has its own web installer that will help you to perform the installation in a few steps without touching any code or modifying any files.
As Document Management System is using Laravel, and Laravel requires the root of
Document Management System to
be
pointed at the /public path, in this case, the easiest way to install
Document Management System is
on a subdomain that points to subdomain folder
/public
path.
Below, you can find installation video for cPanel, watch the video tutorials to get familiar with the installation steps and learn how easy is to install Document Management System.
You will need to create a subdomain for your installation, for example,
public.
subfolder
In order to proceed with the web installer, you will first need to download the release archive files from your Document Management System account releases page or your Envato account downloads page.
For the sake of this example, assuming that you created subdomain with name
"docmgt" and the path is public_html/docmgt/
upload the
files
to the public_html/docmgt
folder.
Create a brand new database that will be used only for the Document Management System installation.
Assuming that you have created the subdomain, database and uploaded the files as explained in the previous steps, follow the steps below to begin with the installation process.
Document Management System will automatically try to guess the URL where the application will be installed, in our case now from, this example, the URL is https://docs.yourdomain.com/ ,if the URL is wrong, please adjust it accordingly.
You can leave it as default or you can write your own name, for example, "Document Management"
Enter database hostname, in most cases, the default hostname is localhost, however, if it's different in your case, make sure to set the correct hostname.
In most cases, this value will be 3306 as this port is MySQL default port, if you are not familiar with this option for your server, leave it as it is and continue to the next field, where you will need to configure the database name and user you created in the previous step.
Enter the database name.
Enter the database username.
Enter the database user password, for local installations and database users without password, leave it empty.
Enter the first name
Enter the last name.
Enter the email address.
Enter the user password.
After you finish all the installation steps you will be presented with a installation successful screen where there will be information on how to configure cron job as well the guessed command and the path for the cron job.
Don't forget to copy the command/path so you can configure a cron job as explained here.
If you are managing the server and you are already familiar with Laravel, probably you will know that for Nginx you will need to create separate configuration file so Document Management System can be served.
The examples below are for installation on the root domain, but feel free to adjust the paths for the subdomain if you want to perform an installation on a subdomain.
server { listen 80; server_name example.com; root /example.com/public; add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode=block"; add_header X-Content-Type-Options "nosniff"; index index.html index.htm index.php; charset utf-8; location / { try_files $uri $uri/ /index.php?$query_string; } location = /favicon.ico { access_log off; log_not_found off; } location = /robots.txt { access_log off; log_not_found off; } error_page 404 /index.php; location ~ \.php$ { fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; include fastcgi_params; } location ~ /\.(?!well-known).* { deny all; } }
If you are managing the server, you will need to make sure that the proper
permissions are applied to all files and folders and also the files and folders
belong to the user and group responsible for managing the web server, in most
cases is www-data
.
Keep in mind that you won't need to apply the commands below if your server is managed by your server provider, for example, shared hosting as the permissions and the group will be already configured for you.
find /var/www/example.com -type d -exec chmod 755 {} \;
find /var/www/example.com -type f -exec chmod 644 {} \;
sudo chown www-data:www-data -R /var/www/example.com
cron is a Linux utility that schedules a command or script on your server to run automatically at a specified time and date. A cron job is the scheduled task itself. Cron jobs can be very useful to automate repetitive tasks.
Every modern application with decent features must have cron job configured in order tasks to be executed in the background.
Document Management System requires a properly configured cron job, follow the steps explained below to configure cron job for your installation.
/path/to/docmgt/
with the
path to your
installation. /usr/local/bin/php81
or
/opt/alt/php81/usr/bin/php
instead of php
)
Login to cPanel and search for "Cron Job", and add the following cron job command as shown below:
php /path/to/docmgt/artisan schedule:run >> /dev/null 2>&1
If you are managing the server via SSH, you will need to configure the cron job from the command line, the cron job must be configured for the user responsible for managing the web server, in most cases, it's the www-data user.
sudo crontab -u www-data -e * * * * * php /path/to/docmgt/artisan schedule:run >> /dev/null 2>&1
Below you can find common cron job commands that are confirmed to work for commonly used hosting providers, in most cases the commands are confirmed by our customers and if your hosting provider is listed below, they should work in your environment as well.
/usr/local/php81/bin/php-cli /path/to/docmgt/artisan schedule:run >> /dev/null 2>&1
We're excited to announce the latest upgrade to our Document Management system: seamless integration with Amazon S3 storage. With this new feature, users can now enjoy enhanced flexibility and reliability in storing their documents. By leveraging Amazon S3, one of the most trusted cloud storage solutions available, users can upload their documents with confidence, knowing that their data is securely stored and easily accessible whenever they need it. This integration opens up a world of possibilities for efficient document management, allowing users to take advantage of Amazon's scalable infrastructure to handle their growing document storage needs.
In order to configure the Amazon S3 storage, you will need to setup the S3 bucket, and then configure the Document Management System to use the Amazon S3 storage.
If you are encountering some issues, first the best is to check the server and
application logs. e.q /var/log/apache2/error.log
and
storage/logs/laravel.log
Also, it's recommended while debugging an issue, to set debug mode in the .env
file, APP_DEBUG=true
.
Below are the steps to run the project locally.
Once you have made changes to the project locally, you will need to deploy the changes to the server. Below are the steps to deploy the changes to the server.
It shows the graphical representation of data.
Document By category Graph shows the no. of document by category.
Calender show the List of Avaialble reminder in the systems.
It shows the Documents that has been assign to you. all the member has this page access. you can search document by name/description, meta tags or category.
From the List of Assigned Documents you can view the document, add comment on document which will be seen to other assignee.
you can also add the reminder on specific document which will be visible to you only.
From the Version history tab you can also see the previous versions of the document.
You can also add your personal document if you have permission to add the document and which will be visible inside the All the Documents.
All Documents Screen is Kind of master of the documents and admin only can have permission to this screen.
Update the Document name, category, description or meta tags. edit document doesn't mean to edit the content of the document.
You can share the Document with Users or roles(group of users). you can also specify the the time period and option to allow the download or not while sharing it.
In the listing screen you can see the List of Users/Roles has Permission to the specific document.
Preview Uploaded files including audio, video, image, text, PDF and all the Microsoft Office Documents.
Upload the new version of the document which will be visible to all the user who have permission to access it.
from the version history you can see the uploaded version of the document and the current version with details like who have uploaded and when.
you can also restore the previous version of the document to the current version.
User can send the document in Email as attachment. to send the email it is required to have setting up the default SMTP configuration.
Admin user(who has permission to see All Documents) can delete the document. Once Document has been deleted from here it wan't be avaiable to any other user.
You can set recurring Daily, Weekly, Monthly, Quarterly, Half Yearly, Yearly or Specific Date reminder in the system or on the document to get notification or email.
Please not that inorder to get notification cron job need to run on the server. to get email of the reminder it is required to setup default SMTP correctly.
you can see the new notification list and clicking on View All you can see all the list of notifications which the document details.
From the My Profile from top right you can change your profile and system password.
As Document Management Sytem supports muliti-language, from the Top Right there is also option to change the application language.