• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

853
Views
How to access a laravel api in apache virtual host?

I have set up apache virtual host and have a site with below config (the website is working well): NB: The domain names below fictitious.

<VirtualHost *:80>
    ServerName www.bill.test.com
    ServerAlias bill.test.com
    Redirect / https://bill.test.com/
</VirtualHost>


<VirtualHost *:443>

    ServerName www.bill.test.com
    ServerAlias bill.test.com
    DocumentRoot /applications/www/bill.test.com/public_html/public
    SSLEngine on
    SSLCertificateFile /home/user1/ssl_certificate/test.com/wildcard_eneoapps_com.crt
    SSLCertificateKeyFile /home/user1/ssl_certificate/test.com/wildcard_eneoapps_com.key
    SSLCertificateChainFile /home/user1/ssl_certificate/test.com/DigiCertCA.crt
    ErrorLog /applications/www/bill.test.com/error.log
    CustomLog /applications/www/bill.test.com/requests.log combined
    <Directory "/applications/www/bill.test.com/public_html/public">
        AllowOverride All
    </Directory>
</VirtualHost>

Also, on this server I have an API located in the directory below:

/applications/www/html/ebill-api

Now when I try to call this API in the code, I get the error below:

Client error: `POST http://12.ipp.106.21/ebill-api/public/api/login' resulted in a `404 Not Found` response:\n

My httpd.conf file looks like below:

DocumentRoot "/applications/www/html"

#
# Relax access to content within /var/www.
#
<Directory "/applications/www">
    AllowOverride None
    # Allow open access:
    Require all granted
</Directory>

# Further relax access to the default document root:
<Directory "/var/www/html">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.4/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride None

    #
    # Controls who can get stuff from this server.
    #
    Require all granted
</Directory>

Please help as I am new to configuring apache and confuse why this doesn't work. I was able to call an API on a separate server but I don't understand why calling this one which is on thesame server as the website is not working.

about 3 years ago · Santiago Trujillo
1 answers
Answer question

0

Since you have the Laravel api in a subfolder, you should adjust the APP_URL in your .env file to be http://12.ipp.106.21/ebill-api/public/

Try this change. See if it help.

about 3 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error