CoderFunda
  • Home
  • About us
    • Contact Us
    • Disclaimer
    • Privacy Policy
    • About us
  • Home
  • Php
  • HTML
  • CSS
  • JavaScript
    • JavaScript
    • Jquery
    • JqueryUI
    • Stock
  • SQL
  • Vue.Js
  • Python
  • Wordpress
  • C++
    • C++
    • C
  • Laravel
    • Laravel
      • Overview
      • Namespaces
      • Middleware
      • Routing
      • Configuration
      • Application Structure
      • Installation
    • Overview
  • DBMS
    • DBMS
      • PL/SQL
      • SQLite
      • MongoDB
      • Cassandra
      • MySQL
      • Oracle
      • CouchDB
      • Neo4j
      • DB2
      • Quiz
    • Overview
  • Entertainment
    • TV Series Update
    • Movie Review
    • Movie Review
  • More
    • Vue. Js
    • Php Question
    • Php Interview Question
    • Laravel Interview Question
    • SQL Interview Question
    • IAS Interview Question
    • PCS Interview Question
    • Technology
    • Other

10 March, 2022

6 Steps to Install Magento 2.4.2 on XAMPP Windows Using

 Programing Coderfunda     March 10, 2022     Magento 2, MAGENTO TUTORIALS     No comments   

 

Install Magento 2.4 in Windows 10 using composer and command line with Elasticsearch


In this post we will learn, download the Magento 2.4 using composer and install the Magento 2.4 software from the command line on localhost windows 10.

Prerequisites

Before you continue, you must do the following:

  • System Requirements.
  • Install Composer
  • Get authentication keys for the Magento code repository.

PHP Configuration

Edit php.ini file for increase memory limit and enable required extensions. You can required extensions from this link System Requirements. In xampp server maximum extensions enable.

Also need to change below in php.ini:

Increase memory limit

memory_limit=2G

Enable below extensions by remove semicolon(;) from begining of the line.

extension=intl
extension=soap
extension=sockets
extension=xsl


Get Authentication Keys

Get authentication keys form Magento officeal website after login. After login you can get Access Keys, public key and private key. Public key is username and private key is password. We will use this creadentials for download Magento using composer.

Install Composer

Download compser version 1.10.20 from this link Install Composer. After download composer.phar file paste there you want download Magento.

For example, we can paste composer.phar file in c:\xampp\htdocs

Download Magento 2.4 Using Compser

Now download Magento 2.4 using composer using below command.


php composer.phar create-project --repository-url=https://repo.magento.com/ magento/project-community-edition <project-folder-name>
Copy

For example


C:\xampp\htdocs>php composer.phar create-project --repository-url=https://repo.magento.com/ magento/project-community-edition magento241
Copy

Note: After download magento create zip file for creating next project or reintall magento. Because Magento download via composer is taking 15-20 min.

Install Elasticsearch

Download Elasticsearch according your operating system. In this lesson we have used Windows 10. After download Elasticsearch zip file and paste in C drive and unzip this zip file. And run below command.


c:\elasticsearch-7.10.2>bin\elasticsearch.bat
Copy

After run Elasticsearch, we can check url http://localhost:9200 in browser then we can see output like below.


Create Database

Create database for your project. In this lesson we have created database magento241

Install Magento 2.4 via Command Line

Now we will install Magento 2.4 via command line on windows localhost. If you want to install Magento on localhost then need to changes in file vendor\magento\framework\Image\Adapter\Gd2.php like below code.


private function validateURLScheme(string $filename) : bool
{
	$allowed_schemes = ['ftp', 'ftps', 'http', 'https'];
	$url = parse_url($filename);
	if ($url && isset($url['scheme']) && !in_array($url['scheme'], $allowed_schemes)) {
		return false;
	}

	return true;
}
Copy

Replace with


private function validateURLScheme(string $filename) : bool
{
	$allowed_schemes = ['ftp', 'ftps', 'http', 'https'];
	$url = parse_url($filename);
	if ($url && isset($url['scheme']) && !in_array($url['scheme'], $allowed_schemes) && !file_exists($filename)) {
		return false;
	}

	return true;
}
Copy

After above changes then run below command for install Magento 2.4

php bin/magento setup:install --base-url=http://localhost/magento241/ --db-host=localhost --db-name=magento241 --db-user=root --db-password= --admin-firstname=Amit --admin-lastname=Kumar --admin-email=user@example.com --admin-user=admin --admin-password=admin123 --language=en_US --currency=USD --timezone=America/Chicago --use-rewrites=1 --search-engine=elasticsearch7 --elasticsearch-host=localhost --elasticsearch-port=9200


Fixed Admin Login Issue

After installatin if showing black page on admin login page then need changes in file vendor\magento\framework\View\Element\Template\File\Validator.php like below code.


protected function isPathInDirectories($path, $directories)
{
    if (!is_array($directories)) {
        $directories = (array)$directories;
    }
    $realPath = $this->fileDriver->getRealPath($path);
    foreach ($directories as $directory) {
        if (0 === strpos($realPath, $directory)) {
            return true;
        }
    }
    return false;
}
Copy

Replace with


protected function isPathInDirectories($path, $directories)
{
    if (!is_array($directories)) {
        $directories = (array)$directories;
    }
    $realPath = $this->fileDriver->getRealPath($path);
    foreach ($directories as $directory) {
      // add below line for fix this issue
      $directory = $this->fileDriver->getRealPath($directory);
        if (0 === strpos($realPath, $directory)) {
            return true;
        }
    }
    return false;
}
Copy

Disable TwoFactorAuth Module

In localhost you can disable module Magento_TwoFactorAuth via running below command.


php bin/magento module:disable Magento_TwoFactorAuth
Copy

Fixed Icon and Images Loading Issue

If images and icons is not loading then run below commands


php bin/magento setup:static-content:deploy -f
php bin/magento indexer:reindex
php bin/magento cache:flush
Copy

I hope after follow the above steps, Magento 2.4 installation will be success!!

  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg
Email ThisBlogThis!Share to XShare to Facebook

Related Posts:

  • How to add a custom Zipcode validator in checkout page Magento 2 How to add a custom Zipcode validator in checkout page Magento 2In Magento 2, it’s not difficult to customize zip code validation and or add a c… Read More
  • How to add custom shipping validations Magento 2 In Magento 2, it’s possible to set shipping validations. This action is also essential because it ensures the transparance and right form of req… Read More
  • How to Install Magento 2 on Localhost How to Install Magento 2 on Localhost2.4.2 or 2.4.3 or 2.4.4Today, we'll show you how to use the XAMPP server to install Magento 2.4 locally on … Read More
  • Magento 2 Theme Development from Scratch Custom Theme in Magento 2 - Theme Development Tutorial Step by StepA theme determines how the elements and the entire website are presented to t… Read More
  • Magento 2 Module Development - Simple Hello World Module Magento 2 Module development or Magento 2 Hello World trends is increase rapidly while Magento release official version. That why… Read More
Newer Post Older Post Home

0 comments:

Post a Comment

Thanks

Meta

Popular Posts

  • Spring boot app (error: method getFirst()) failed to run at local machine, but can run on server
    The Spring boot app can run on the online server. Now, we want to replicate the same app at the local machine but the Spring boot jar file f...
  • Log activity in a Laravel app with Spatie/Laravel-Activitylog
      Requirements This package needs PHP 8.1+ and Laravel 9.0 or higher. The latest version of this package needs PHP 8.2+ and Laravel 8 or hig...
  • Vue3 :style backgroundImage not working with require
    I'm trying to migrate a Vue 2 project to Vue 3. In Vue 2 I used v-bind style as follow: In Vue 3 this doesn't work... I tried a...
  • Laravel auth login with phone or email
          <?php     Laravel auth login with phone or email     <? php     namespace App \ Http \ Controllers \ Auth ;         use ...
  • Enabling authentication in swagger
    I created a asp.net core empty project running on .net6. I am coming across an issue when I am trying to enable authentication in swagger. S...

Categories

  • Ajax (26)
  • Bootstrap (30)
  • DBMS (42)
  • HTML (12)
  • HTML5 (45)
  • JavaScript (10)
  • Jquery (34)
  • Jquery UI (2)
  • JqueryUI (32)
  • Laravel (1017)
  • Laravel Tutorials (23)
  • Laravel-Question (6)
  • Magento (9)
  • Magento 2 (95)
  • MariaDB (1)
  • MySql Tutorial (2)
  • PHP-Interview-Questions (3)
  • Php Question (13)
  • Python (36)
  • RDBMS (13)
  • SQL Tutorial (79)
  • Vue.js Tutorial (68)
  • Wordpress (150)
  • Wordpress Theme (3)
  • codeigniter (108)
  • oops (4)
  • php (853)

Social Media Links

  • Follow on Twitter
  • Like on Facebook
  • Subscribe on Youtube
  • Follow on Instagram

Pages

  • Home
  • Contact Us
  • Privacy Policy
  • About us

Blog Archive

  • September (100)
  • August (50)
  • July (56)
  • June (46)
  • May (59)
  • April (50)
  • March (60)
  • February (42)
  • January (53)
  • December (58)
  • November (61)
  • October (39)
  • September (36)
  • August (36)
  • July (34)
  • June (34)
  • May (36)
  • April (29)
  • March (82)
  • February (1)
  • January (8)
  • December (14)
  • November (41)
  • October (13)
  • September (5)
  • August (48)
  • July (9)
  • June (6)
  • May (119)
  • April (259)
  • March (122)
  • February (368)
  • January (33)
  • October (2)
  • July (11)
  • June (29)
  • May (25)
  • April (168)
  • March (93)
  • February (60)
  • January (28)
  • December (195)
  • November (24)
  • October (40)
  • September (55)
  • August (6)
  • July (48)
  • May (2)
  • January (2)
  • July (6)
  • June (6)
  • February (17)
  • January (69)
  • December (122)
  • November (56)
  • October (92)
  • September (76)
  • August (6)

  • Failed to install 'cordova-plugin-firebase': CordovaError: Uh oh - 9/21/2024
  • pyspark XPath Query Returns Lists Omitting Missing Values Instead of Including None - 9/20/2024
  • SQL REPL from within Python/Sqlalchemy/Psychopg2 - 9/20/2024
  • MySql Explain with Tobias Petry - 9/20/2024
  • How to combine information from different devices into one common abstract virtual disk? [closed] - 9/20/2024

Laravel News

  • Sublime Text Releases Update With Support for Right Sidebar - 5/22/2025
  • Enhance Email Validation with Laravel's Fluent Email Rule Object - 5/18/2025
  • Locale-aware Number Parsing in Laravel 12.15 - 5/21/2025
  • Handle Fluent Values as Arrays with Laravel's array() Method - 5/18/2025
  • Chargebee Starter Kit for Billing in Laravel - 5/20/2025

Copyright © 2025 CoderFunda | Powered by Blogger
Design by Coderfunda | Blogger Theme by Coderfunda | Distributed By Coderfunda