eClass-Learning Management System
  • Introduction
    • Documentation
    • Key Features
    • eClass Addons
    • Introduction
  • Installation
    • Server Requirements
    • Shared Hosting Install
    • Installation Steps
    • Installation with Apache
  • Setting Up eClass
    • PWA Setup
    • Mail Settings
    • Import Demo Content
    • Geolocation
    • Chat Settings
    • Social Login Settings
      • Facebook Login Setting.
      • Google Login Setting.
      • GitLab Login Setting.
      • LinkedIn Login Setting.
      • Amazon Login Setting.
      • Twitter Login Setting.
    • Payment Gateways
      • PayPal Payment Gateway
      • Stripe Payment Gateway
      • Razorpay Payment Gateway
      • Paytm Payment Gateway
      • Mollie Payment Gateway
      • Skrill Payment Gateway
      • Braintree Payment Gateway
      • Payflexi Payment Gateway
      • Instamojo Payment Gateway
      • PayU Money Payment Gateway
      • Cashfree Payment Gateway
      • Rave Payment Gateway
      • Paystack Payment Gateway
      • Omise Payment Gateway
    • Meetings
      • Zoom Meeting
      • Google Meet
      • Jitsi Meet
      • BigBlueButton
    • Push Notification
    • Setting Up Multicurrency
    • Home Page Setting
    • AWS Setting
    • Mail Chimp
    • Google Drive Link
    • Language Translate
    • Affiliate
    • ReCaptcha Setting
    • App Secret Key
    • Ai Tool
    • Two Factor Authentication
    • Coming Soon
  • Faqs
    • Installation FAQ's
    • General Settings
    • Access Denied
    • Disclaimer
    • Regular & Extended Licenses
    • Privacy Policy
  • Update Details
    • Change Log
    • Update Process
  • Video And Support
    • Support
    • Source And Credits
    • Eclass Tutorials-Youtube
  • Conclusion
    • Conclusion
  • ECLASS API
    • 🍿Getting Started
  • Login
  • Register
  • Refresh Token
  • Logout
  • Home
  • Add bundle course to cart
  • Remove bundle course from cart
  • Notifications
  • Read all Notifications
  • Instructor Details
  • Course Review
  • Chapter Total Duration
  • API Keys
  • All Courses with details
  • All Coupons
  • Order Create
  • Become an Instructor
  • Purchase History
  • About Us
  • Contact Us
  • Blog
  • Blog Detail
  • Recent Blog
  • Recent Course
  • TermsCondition & PrivacyPolicy
  • Career Page
  • Zoom Meeting
  • Big Blue Button Meeting
  • Payment Gateways Api Keys
  • Get Course Progress
  • Course Progress Update
  • Course Report
  • Coupon Apply
  • Coupon Remove
  • Course Content
  • Course Appointment Request
  • Course Assignment Submit
  • Course Question Submit
  • Course Answer Submit
  • Appointment Delete
  • Instructor Dashboard
  • Review Submit
  • Get All Categories
  • Get one category by using id
  • Create Category
  • Update Category
  • Delete Category
  • Get All SubCategories
  • Get one SubCategories by using id
  • Create SubCategories
  • Update SubCategories
  • Delete SubCategories
  • Get All ChildCategory
  • Get one ChildCategory by using id
  • Create ChildCategory
  • Update ChildCategory
  • Delete ChildCategory
  • Get All Course
  • Get one course by using id
  • Create Course
  • Update Course
  • Delete Course
  • Get All Refund Policies
  • Get All Course Language
  • Get one course language by using id
  • Create Language
  • Update Course Language
  • Get All Refund Policies
  • Get All Course Include
  • Get one course Include by using id
  • Create Include
  • Update Course Include
  • Delete Course Include
  • Get All Course WhatLearn
  • Get one course WhatLearn by using id
  • Create WhatLearn
  • Update Course WhatLearn
  • Delete Course WhatLearn
  • Get All Course Chapter
  • Get one course Chapter by using id
  • Create Course Chapter
  • Update Course Chapter
  • Delete Course Chapter
  • Get All Course Class
  • Get one course Class by using id
  • Create Course Class
  • Update Course Class
  • Delete Course Class
  • Course with pagination
  • All Languages
  • Invoice Download
  • Certificate Download
  • gift/user/check
  • Gift Checkout
  • Free Enroll
  • Quiz submit
  • Add to watchlist
  • View watchlist
  • Add to watchlist
  • Get All Order
  • Get one order by using id
  • Create Order
  • Delete Order
  • Get All Refund
  • Get one Refund by using id
  • Update Refund
  • Delete Refund
  • Update Review Like/Dislike
  • Get All Assignment
  • Get one Assignment by using id
  • Update Assignment
  • Delete Assignment
Powered by GitBook
On this page
  • Remove Public From URL
  • Remove Public From URL for LightSpeed Server
  • Hide or Denied Access .env
  • Debug Mode?
  • 419 Error
  • MYSQL Error
  • No Application Encryption key has been specified
  • .env missing
  • Internal server error & 500 Server error
  • MYSQL or Database not creating table
  • Class 'ZipArchive' not found
  • curl_init error
  • 404 error
  • 403 error
  • Payload error
  • Could not find driver
  • .env variables not read in project

Was this helpful?

  1. Faqs

Installation FAQ's

PreviousComing SoonNextGeneral Settings

Last updated 6 months ago

Was this helpful?

Remove Public From URL

To remove the public from the URL create a .htaccess file in the root folder and write following code.

<IfModule mod_rewrite.c>
	RewriteEngine On 
	RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

To remove the public from URL and Force HTTPS redirection create a .htaccess file in the root folder and write the following code.

<IfModule mod_rewrite.c>
	RewriteEngine On
	RewriteCond %{HTTPS} !=on
	RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE] 
	RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

For more detail read article :

NOTE: Remove Public not work for Localhost and sub folders.

Its work with any domain and subdomain only.

In this guide you will know how to remove public from url. To Remove public from url your server must have enabled the mod_rewrite. header to check whether it's enabled or not you can run following and check according to screenshot

Remove Public From URL for LightSpeed Server

To remove the public from the URL in LightSpeed Server -> create a .htaccess file in the root folder and write following code.

RewriteEngine On 
RewriteRule ^(.*)$ public/$1 [L]

To remove the public from URL and Force HTTPS redirection in LightSpeed Server -> create a .htaccess file in the root folder and write the following code.

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE] 
RewriteRule ^(.*)$ public/$1 [L]

Hide or Denied Access .env

To Hide or Denied Access .env and create .htaccess file in the root folder and write the following code.

# Disable Directory listing
Options -Indexes
# block files which needs to be hidden, specify .example extension of the file
</FilesMatch "^\.env">
    Order allow,deny
    Deny from all
<//FilesMatch>

Debug Mode?

Debug mode will help you to track the error on your website. It is not all preferred to turn the debug mode on live site for a very long time.

How to turn to debug mode on

  • Login to your FTP account.

  • Open and edit .env file.

Change

APPi_DEBUG=false

To

APP_DEBUG=true

Save and upload the file.

false means debug mode is OFF true means debug mode is ON

419 Error

A 419 error in Laravel can occur when a user's session has expired and sessions not save. Laravel uses the 419 status code to indicate that the user's session has expired and sessions not save.

To fix this error, you can try the following:

Its not script issue.

  1. Follow mentioned PHP INI settings.

  2. Increase the session lifetime: You can increase the session lifetime in your config/session.php file to prevent the session from expiring too quickly.

  3. Check for session data integrity: Ensure that the session data is not lost or corrupted by checking that the session data is still present in the storage.

  4. Check for Authentication : Ensure that the user is authenticated before allowing access to protected routes or resources.

Make sure PHP version 8.2.4 and use all following PHP settings. It shows due to the session not save in hosting.

If still you are experiencing an 419 error, you should contact your hosting provider or web administrator to troubleshoot the problem and find a solution. They will be able to examine the server logs to determine the cause of the error and take appropriate action. its not script related issue.

MYSQL Error

If you getting this error SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter table 'permissions add unique permissions_name_guard_name_unique (name, 'guard_name')). Please Update your server setting.

First Solution: Go to Project-directory\app\Providers\AppServiceProvider.php

   Schema::defaultStringLength(191);
//Change To
Schema::defaultStringLength(121);

No Application Encryption key has been specified

To solve this issue you will have to check APP_KEY which is located within your . env (environment) file. don't change or remove it. also check .env file not missing.

.env missing

Most of times .env file not missing its just hide , so please make sure its not hide.

cPanel show files Quick Steps:

  1. Log into cPanel & click “File Manager” under the files panel.

  2. Click “settings” in the top right of the file manager.

  3. Choose the Document Root (usually you can leave this as the default)

  4. Check the box titled “Show Hidden Files (dotfiles) & click Save.

Internal server error & 500 Server error

An internal server error is a general term used to describe a problem that occurs when a server is unable to process a request from a client. This can happen for a variety of reasons, such as a problem with the server's or hardware, a misconfigured server, or an issue with the client's request.

When an internal server error occurs, the server will typically return a message indicating that there was an error and that the request could not be fulfilled. This message is often accompanied by an error code, such as "500 Internal Server Error."

Some Solution :

  • Please check the .htaccess file configuration.

  • Check PHP version 8.2.4

  • Check port 80

  • Check all files extracted properly specially vendor folder.

  • Exceeding server resources

  • Corrupted server files

If still you are experiencing an internal server error, you should contact your hosting provider or web administrator to troubleshoot the problem and find a solution. They will be able to examine the server logs to determine the cause of the error and take appropriate action. its not script related issue.

MYSQL or Database not creating table

Please check database privilege. it must be ALL PRIVILEGES. if you don't know how to give it please contact to hosting provider.

Class 'ZipArchive' not found

You are getting this error because you don't enable a zip archive extension on your server. enable zip archive extension and issue will resolved. if you don't know how to enable it please contact to hosting provider. its not script related error.

curl_init error

You are getting this error because you don't enable a curl extension on your server. enable curl e extension and issue will resolved. if you don't know how to enable it please contact to hosting provider. its not script related error.

To Enable cURL Using EasyApache on WHM:

  1. Log in to WHM as the 'root' user.

  2. Either search for "EasyApache" or go to Software > EasyApache

  3. Scroll down and select a build option (Previously Saved Config)

  4. Click Start "Start customizing based on profile"

  5. Select the version of Apache and click "Next Step".

  6. Select the version of PHP and click "Next Step".

  7. Chose additional options within the "Short Options List"

  8. Click Exhaustive Options List.

  9. Find and select the option for cURL.

  10. Click curl, and then click Save and build.

404 error

A 404 error is an HTTP status code that indicates that a requested web page or resource cannot be found on a server. 404 means file not fount, its not script issue.

This can happen for a number of reasons, including:

  • Check port 80

  • Check all files extracted properly.

  • Incorrect URL

  • The server is down

If still you are experiencing an 404, you should contact your hosting provider or web administrator to troubleshoot the problem and find a solution. They will be able to examine the server logs to determine the cause of the error and take appropriate action. its not script related issue.

403 error

A 403 error is an HTTP status code that indicates that the client (i.e. the user's browser) is not authorized to access the requested resource. This error message is often displayed when a user attempts to access a website or webpage that they do not have permission to view. Your user who did not get permission. So you edit the user role and then update

Certain users to access certain pages or sections. In this case, a 403 error message may be displayed if the user is not authorized to view the requested resource.

Payload error

A payload error in Laravel is typically caused by an issue with the data being passed to the server during an API request. This can be caused by a number of factors, including missing or incorrect data, invalid data types, or incorrect formatting of the data.

Please check File and folder permissions for Shared Hosting

public_html 775 (public_html folder is root folder in shared hosting)

if using subdomain then Subdomain folder 775

File and folder permissions for VPS

/bootstrap 777 /public 777 /storage 777 /public/images 777 /public/config.txt 777 .env 777

Could not find driver

The error message you provided, "could not find driver (SQL: select * from settings limit 1)", suggests that there is an issue with the database driver configuration in your server or cpanel.

  • Check Database Configuration:

    Open the .env file in your Laravel project and ensure that the DB_CONNECTION parameter is set to the correct database driver (e.g., mysql).

  • Verify Database Extension:

    Ensure that the necessary PHP extensions for your chosen database are installed and enabled on your server. For example, if you're using MySQL, make sure the pdo_mysql extension is enabled.

  • Check Database Connection:

    Ensure that your database server is running and that the connection details in your .env file (such as DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, and DB_PASSWORD) are correct.

  • Restart Server:

    After making any changes, it's a good idea to restart your server to apply the updates.

  • Verify PHP Version:

    Make sure you're using a compatible PHP version for your Laravel version.

  • Database Permissions:

    Check necessary permissions to access the database.

.env variables not read in project

its possible solution : Check for Caching Issues If you're working in a shared hosting environment, you might also need to check whether there is a server-side caching mechanism (like Varnish or Cloudflare) that could be causing .env changes to not reflect.

php artisan config:clear php artisan cache:clear php artisan config:cache

restart server

Check folder permissions as mentioned :

Check folder permissions as mentioned :

https://mediacitydocs.gitbook.io/eclass-learning-management-system/installation/untitled
https://mediacitydocs.gitbook.io/eclass-learning-management-system/installation/untitled
https://mediacitydocs.gitbook.io/eclass-learning-management-system/installation/untitled
https://stackoverflow.com/questions/23837933/how-can-i-remove-public-index-php-in-the-url-generated-laravel
http://yourdomain.com/phpinfo
Internal Server Error
500server related error
cPanel Setting for enable zip archive extension