Skip to content

Instantly share code, notes, and snippets.

@rajibbinalam
Last active October 10, 2024 07:54
Show Gist options
  • Save rajibbinalam/c260c4e3f73b8232b459c71441c9fe79 to your computer and use it in GitHub Desktop.
Save rajibbinalam/c260c4e3f73b8232b459c71441c9fe79 to your computer and use it in GitHub Desktop.
Install Apache, MySQL, PHP, Phpmyadminon on Linux
Note: # mean -> optional / Comment for a condition

INSTALL APACHE

sudo apt update
sudo apt install apache2
# sudo ufw app list
sudo ufw allow in "Apache"
# sudo ufw status

INSTALL PHP

Install Default PHP. This command will install default with php plugins. after this no need to use other commands

sudo apt-get update
sudo apt install php libapache2-mod-php php-mysql

Install PHP 7.3

# sudo apt -y install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install -y php7.4-cli php7.4-json php7.4-common php7.4-mysql php7.4-zip php7.4-gd php7.4-mbstring php7.4-curl php7.4-xml php7.4-bcmath

Install PHP 8.2

sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt-get install -y php8.2-cli php8.2-common php8.2-fpm php8.2-mysql php8.2-zip php8.2-gd php8.2-mbstring php8.2-curl php8.2-xml php8.2-bcmath

Switch PHP Versions ->

update-alternatives --config php 
# OR
sudo update-alternatives --set php /usr/bin/php8.1

INSTALL MARIADB -> ( Install MARIADB Or MYSQL. not both)

sudo apt update
sudo apt install mariadb-server
sudo systemctl start mariadb.service
# sudo mysql_secure_installation

INSTALL MYSQL

sudo apt install mysql-server
sudo systemctl start mysql.service

CREATE OR SET PASSWORD

sudo mysql
# OR 
mysql -u root -p

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '12345';  # 12345 is password
GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY '12345' WITH GRANT OPTION;

INSTALL PHPMYADMIN

sudo apt install phpmyadmin

sudo apt install phpmyadmin php-mbstring php-zip php-gd php-json php-curl

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
sudo a2enconf phpmyadmin.conf
sudo systemctl reload apache2.service

INSTALL COMPOSER GLOBALLY

# download
curl -sS https://getcomposer.org/installer | php
# composer.phar move to bin composer
sudo mv composer.phar /usr/local/bin/composer
# Permission bin/composer for Sudo
sudo chmod +x /usr/local/bin/composer
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment