Aapke saare files (PHP, CSS, JS, aur .htaccess) ko mila kar check karne ke baad, **Error 500** ke mukhya kaaran aur unka samadhan niche diya gaya hai. Aapne code bahut achha likha hai, lekin production server (Hostinger) par kuch chhoti cheezein crash kar rahi hain. ### 1. Vendor Folder aur Composer (Sabse Badi Wajah) Aapke `database.php` aur `mail.php` mein `vendor/autoload.php` ko call kiya gaya hai. * **Galti:** Agar aapne Hostinger par `vendor` folder upload nahi kiya hai, toh PHP ko `Firebase` aur `PHPMailer` ki libraries nahi milengi, aur server turant **Error 500** de dega. * **Solution:** Apne computer par `composer install` chalayein aur jo `vendor` folder bane, use Hostinger ke `public_html` (ya jahan aapki files hain) ke bahar ya barabar upload karein. ### 2. File Paths ki Galti (Directory Structure) Aapne `header.php` mein call kiya hai: `require_once __DIR__ . '/../config/session.php';`. Lekin `auth.php` mein call kiya hai: `require_once __DIR__ . '/database.php';`. * **Galti:** Agar aapki files ka structure sahi nahi hai, toh `require_once` fail ho jayega. * **Sahi Structure:** ```text / (root) ├── config/ │ ├── auth.php │ ├── database.php │ ├── mail.php │ ├── session.php │ └── firebase-credentials.json ├── includes/ │ ├── functions.php │ ├── header.php │ ├── sidebar.php │ └── footer.php ├── vendor/ (Iska hona bahut zaroori hai) ├── index.php └── dashboard.php ``` ### 3. Firebase Credentials JSON `database.php` mein line hai: `$serviceAccountPath = __DIR__ . '/firebase-credentials.json';`. * **Galti:** Agar aapne Firebase console se download ki hui JSON file ko rename karke `config` folder mein nahi dala hai, toh connection fail ho jayega. * **Solution:** JSON file ko `config` folder mein rakhein. ### 4. .htaccess Custom Error Pages Aapke `.htaccess` mein ye lines hain: [cite_start]`ErrorDocument 500 /shayari/500.php`[cite: 1]. * **Galti:** Agar `/shayari/` naam ka folder nahi hai ya `500.php` file missing hai, toh server "Error 500" dikhane ki koshish mein "Recursive Error" mein phans jayega aur crash ho jayega. * **Solution:** In lines ko temporary hata dein ya check karein ki path sahi hai. ### 5. SMTP Password aur Mail Config `mail.php` mein aapne password `YourStrongPasswordHere` rakha hai. * **Galti:** Agar ye sahi nahi hai, toh `Auth.php` mein jab `sendOTP` call hoga, toh PHPMailer error dega jo handle na hone par server crash kar sakta hai. --- ### 🔥 Turant Check Karne Ka Tarika (Debugging) Error 500 ko khatam karne ke liye, **`index.php`** ke sabse upar (yani ` Warning: require_once(/home/u395065556/domains/kasppra.com/public_html/shayari/vendor/autoload.php): Failed to open stream: No such file or directory in /home/u395065556/domains/kasppra.com/public_html/shayari/config/mail.php on line 3

Fatal error: Uncaught Error: Failed opening required '/home/u395065556/domains/kasppra.com/public_html/shayari/vendor/autoload.php' (include_path='.:/opt/alt/php82/usr/share/pear:/opt/alt/php82/usr/share/php:/usr/share/pear:/usr/share/php') in /home/u395065556/domains/kasppra.com/public_html/shayari/config/mail.php:3 Stack trace: #0 /home/u395065556/domains/kasppra.com/public_html/shayari/config/auth.php(4): require_once() #1 /home/u395065556/domains/kasppra.com/public_html/shayari/index.php(12): require_once('/home/u39506555...') #2 {main} thrown in /home/u395065556/domains/kasppra.com/public_html/shayari/config/mail.php on line 3