Civitas ERP — Static Permission Diagnostic

If you can READ this page, Apache is serving static files correctly. The 500 errors you see on PHP pages are 100% a PHP-level issue (likely session/cache write permissions). Use the steps below.

The problem (one of these):

A) writable/* owned by SSH user, not Apache user

Your writable/ directory and its subdirectories are owned by the user who uploaded the files (probably root via cPanel's initial setup). Apache runs as nobody or www-data. chmod 777 doesn't help when the owner is wrong on most Linux setups.

Visible symptoms: every PHP page returns 500, including this fixer's parent PHP files.

B) public/.htaccess misconfigured after our edits

We enabled RewriteBase /rajpath/ in rajpath/.htaccess. If your cPanel Apache uses AllowOverride None (common), the .htaccess is ignored and PHP just runs in the standard way.

C) Double-nested folder from re-extracting

You extracted twice and now have rajpath/public/public/.... Probes show:

helixcrm.in/rajpath/public/public/login           → 500
helixcrm.in/rajpath/public/deployment/deploy-http.php → 500
helixcrm.in/rajpath/deployment/deploy-http.php     → 404 (gone!)

The fix (in order)

Option 1 — Best: ask cPanel support (works 100% of time)

Send this to your hosting support:

Subject: Apache 500 error on helixcrm.in/rajpath/*

Hi, my application at https://helixcrm.in/rajpath/ returns
HTTP 500 on every page. The issue is that writable/ subdirectories
are owned by the wrong user for Apache to write session/cache
files. Please run as my cPanel user:

cd ~/public_html/rajpath
find writable -type d -exec chmod 0777 {} \;
find writable -type f -exec chmod 0666 {} \;
chmod 0644 .env
chmod 0755 writable

(Or, more robust, also chown to the Apache user via `chown -R $(whoami) writable .env` if needed.)

After that, https://helixcrm.in/rajpath/login should return 200
and I can log in.

Thanks!

Option 2 — Self-serve via cPanel File Manager

If you can't reach support, try cPanel's "Fix File Ownership" tool:

  1. cPanel → File Manager → navigate to public_html/rajpath/
  2. In the top menu, look for "Fix File Ownership" or similar (Disk Space tools may have it)
  3. Run it on writable/ only

If that button doesn't exist, do this instead:

  1. Open File Manager
  2. Navigate into writable/
  3. Select all subfolders (cache, logs, session, debugbar, backups, uploads, imports)
  4. Right-click → Permissions → set to 0777 (rwxrwxrwx)
  5. Also set the .env at project root to 0644 (rw-r--r--)
  6. Owner checkbox: cannot change via File Manager — needs SSH/support

Option 3 — Clean re-deploy

If everything is in a mess, fresh start:

  1. cPanel → File Manager → select rajpath/ folder → Delete
  2. Upload the LATEST ZIP: rajpath-prod-20260707-142518.zip
  3. Extract INTO a folder named rajpath at public_html/
  4. Verify structure: rajpath/public/index.php exists, rajpath/deployment/ exists, NO rajpath/public/public/
  5. Contact hosting support for chown BEFORE going further

How to check Apache's actual error message

cPanel hides 500 errors generically. Get the real cause:

  1. cPanel → Error Log (under Metrics)
  2. Look at the last 50 lines — it will tell you exactly what PHP failed on
  3. Common phrases to look for: