Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

bacordioroger's avatar

Only Index.php Works

Hi. This is my website: http://bitsm.website You can try accessing it. If I click login or register, it just shows 404 error.

This is my file structure:


|-public_html
-----------------assets
-----------------.htaccess
-----------------index.php
|-hrmis
-----------------all laravel files except public folder

This is my htaccess content:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    Options +FollowSymLinks
    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

Can someone help me please?

Additional Info: Shared hosting via buyshared

0 likes
3 replies
sburina's avatar

Do you have authorization routes in place? What does "php artisan route:list" say? If you do, you should check with your hosting provider if they allow turning on the rewrite engine in .htaccess file.

1 like
bacordioroger's avatar

Sir thank you for the reply.

My Routes are working. My hosting have terminal ssh so I checked it successfully. By first: cd hrmis then php artisan route:list

-----------+----------------------------------------------+
| Domain | Method   | URI                           | Name                  | Action           | Middleware                                   |
+--------+----------+-------------------------------+-----------------------+------------------------------------------------------------------------+----------------------------------------------+
|        | GET|HEAD | /                             | index                 | App\Http\Controllers\PagesController@index           | web                                          |
|        | GET|HEAD | _debugbar/assets/javascript   | debugbar.assets.js    | Barryvdh\Debugbar\Controllers\AssetController@js           | Barryvdh\Debugbar\Middleware\DebugbarEnabled |
|        | GET|HEAD | _debugbar/assets/stylesheets  | debugbar.assets.css   | Barryvdh\Debugbar\Controllers\AssetController@css           | Barryvdh\Debugbar\Middleware\DebugbarEnabled |
|        | DELETE   | _debugbar/cache/{key}/{tags?} | debugbar.cache.delete | Barryvdh\Debugbar\Controllers\CacheController@delete           | Barryvdh\Debugbar\Middleware\DebugbarEnabled |
|        | GET|HEAD | _debugbar/clockwork/{id}      | debugbar.clockwork    | Barryvdh\Debugbar\Controllers\OpenHandlerController@clockwork          | Barryvdh\Debugbar\Middleware\DebugbarEnabled |
|        | GET|HEAD | _debugbar/open                | debugbar.openhandler  | Barryvdh\Debugbar\Controllers\OpenHandlerController@handle           | Barryvdh\Debugbar\Middleware\DebugbarEnabled |
|        | GET|HEAD | api/barangays/{city_id}       |                       | App\Http\Controllers\SettingsController@barangays           | web,role:HR Admin                            |
|        | GET|HEAD | api/cities/{province_id}      |                       | App\Http\Controllers\SettingsController@cities           | web,role:HR Admin                            |
|        | GET|HEAD | api/provinces/{region_id}     |                       | App\Http\Controllers\SettingsController@provinces           | web,role:HR Admin                            |
|        | GET|HEAD | api/user                      |                       | Closure           | api,auth:api                                 |
|        | GET|HEAD | dashboard                     | dashboard             | App\Http\Controllers\DashboardController@index           | web,auth                                     |
|        | POST     | login                         |                       | App\Http\Controllers\Auth\LoginController@login           | web,guest                                    |
|        | GET|HEAD | login                         | login                 | App\Http\Controllers\Auth\LoginController@showLoginForm           | web,guest                                    |
|        | POST     | logout                        | logout                | App\Http\Controllers\Auth\LoginController@logout           | web                                          |
|        | POST     | password/email                | password.email        | App\Http\Controllers\Auth\ForgotPasswordController@sendResetLinkEmail  | web,guest                                    |
|        | POST     | password/reset                |                       | App\Http\Controllers\Auth\ResetPasswordController@reset           | web,guest                                    |
|        | GET|HEAD | password/reset                | password.request      | App\Http\Controllers\Auth\ForgotPasswordController@showLinkRequestForm | web,guest                                    |
|        | GET|HEAD | password/reset/{token}        | password.reset        | App\Http\Controllers\Auth\ResetPasswordController@showResetForm        | web,guest                                    |
|        | POST     | register                      |                       | App\Http\Controllers\Auth\RegisterController@register           | web,guest                                    |
|        | GET|HEAD | register                      | register              | App\Http\Controllers\Auth\RegisterController@showRegistrationForm      | web,guest                                    |
|        | GET|HEAD | settings                      | settings              | App\Http\Controllers\SettingsController@settings           | web,role:HR Admin                            |
|        | GET|HEAD | settings/database             | database_settings     | App\Http\Controllers\SettingsController@database           | web,role:HR Admin                            |
|        | GET|HEAD | settings/frontend             | frontend_settings     | App\Http\Controllers\SettingsController@frontend           | web,role:HR Admin                            |
|        | GET|HEAD | settings/leave                | leave_settings        | App\Http\Controllers\SettingsController@leave           | web,role:HR Admin                            |
|        | GET|HEAD | settings/performance          | performance_settings  | App\Http\Controllers\SettingsController@performance           | web,role:HR Admin                            |
|        | GET|HEAD | settings/recruitment          | recruitment_settings  | App\Http\Controllers\SettingsController@recruitment           | web,role:HR Admin                            |
|        | GET|HEAD | settings/roles                | roles_settings        | App\Http\Controllers\SettingsController@roles           | web,role:HR Admin                            |
|        | GET|HEAD | settings/system               | system_settings       | App\Http\Controllers\SettingsController@system           | web,role:HR Admin                            |
|        | GET|HEAD | settings/training             | training_settings     | App\Http\Controllers\SettingsController@training           | web,role:HR Admin                            |
|        | GET|HEAD | system_manual                 | system_manual         | App\Http\Controllers\PagesController@system_manual           | web,role:HR Admin|HR Specialist              |
|        | GET|HEAD | user/activation/{token}       | user.activate         | App\Http\Controllers\Auth\RegisterController@activateUser           | web,guest                                    |
+--------+----------+-------------------------------+-----------------------+------------------------------------------------------------------------+----------------------------------------------+
sburina's avatar

I think your directory structure is wrong. Basically, you need to move /public directory inside your project, that is: /hrmis/public .

Most hosting providers allow changing the document root for the web site. In your case, you should configure apache server in the following manner:

DocumentRoot "/home/users/youruser/hrmis/public/"

Of course, change the full path accordingly. The important part is changing /public_html/ to /hrmis/public/ .

Please or to participate in this conversation.