Saturday, May 16, 2020

Codeigniter 404 error - Application is migrated from windows to linux

If you have migrated your Codeigniter project from Windows to Linux and it is giving error 404 on Linux system but same project was working fine on Windows, there may be case sensitivity issue in your filenames because Linux treats file code.php and Code.php of same folder differently .

Solution :
Change first letter of filename in uppercase of all files of models and controllers both.
Folder name should be started with small letter. But filenames of the folders should be started with capital letter.

models :
./Admin.php
./Employee.php
./Emails.php
./Contractor.php
./Index.html
./User.php
./users
        ./users/User.php
        ./users/Email.php
./employees
         ./employees/User.php
        ./employees/Email.php

controllers:
./Admincontroller.php
./Employeecontroller.php
./Mailcontroller.php
./Index.html
./Users.php
./users
        ./users/Usercontroller.php
        ./users/Emailcontroller.php
./employer
         ./employer/Employercontroller.php
        ./employer/Employer.php

Start npm start in background

If nohup is giving error to start npm, here is another way to start the npm in the background.

First install forever globally.
npm install -g forever
cd into the project
cd /project/path/
Run forever command.
forever start -c "npm start" ./

ssh - Disable password login and allow login only using key file

If you allow password login for your ssh server, a Brute Force attack can be originated on your server. Key file login is more secured and it reduces possibilities of server hack. Best practice is you should disable password login for your server.

Here are steps to disable password login.

Update the line in the file /etc/ssh/sshd_config. The line might be commented, uncomment the line and change the attribute to no
PasswordAuthentication no
Restart ssh service.