Skip to content

Instantly share code, notes, and snippets.

@choyan
Last active November 3, 2020 22:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save choyan/a93400659cf704c3d3b649fe955868c2 to your computer and use it in GitHub Desktop.
Save choyan/a93400659cf704c3d3b649fe955868c2 to your computer and use it in GitHub Desktop.

Lamp Installation

sudo apt install lamp-server^

sudo systemctl stop apache2.service
sudo systemctl start apache2.service
sudo systemctl enable apache2.service

Composer Instal

curl https://getcomposer.org/installer > composer-setup.php
php composer-setup.php --install-dir=$HOME/.local/bin --filename=composer
rm composer-setup.php
export PATH=$PATH:$HOME/.local/bin
export PATH=$PATH:$HOME/.config/composer/vendor/bin
reload

Php module install

sudo apt install php7.4-mbstring php7.4-xmlrpc php7.4-soap php7.4-gd php7.4-xml php7.4-cli php7.4-zip php-cli

Update the php.ini settings

sudo nano /etc/php/7.4/apache2/php.ini

Change these to

memory_limit = 256M
upload_max_filesize = 64M
cgi.fix_pathinfo=0

Install Composer

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"  
php -r "if (hash_file('sha384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"  
php composer-setup.php
sudo mv composer.phar /usr/local/bin/composer

Install Laravel

composer global require laravel/installer
~~cd /var/www/html~~
~~sudo composer create-project laravel/laravel MyProject --prefer-dist~~
export PATH="$HOME/.composer/vendor/bin:$PATH"
laravel new blog
mv .env.example .env
php artisan key:generate

Change the required permission

sudo chown -R www-data:www-data /var/www/html/MyProject/
sudo chmod -R 755 /var/www/html/MyProject/  

For existing projects

git clone <project_repo>
cd <project_dir>
composer install
sudo nano /etc/apache2/sites-available/<project_name>.conf
<VirtualHost *:80>
    ServerName elplatorico.test
    ServerAlias www.elplatorico.test

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/elplatorico/public

    <Directory /var/www/html/elplatorico>
        AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
sudo a2ensite <project_name>.conf 
sudo a2enmod rewrite 
sudo systemctl restart apache2.service 
sudo nano /etc/hosts 

add new line

127.0.0.89 roomzone.test
mysql -u root -p
show databses;
DROP DATABASE roomzone;
create database <database_name>

if user exists

GRANT ALL PRIVILEGES ON * . * TO '<user_name>'@'localhost';

new user:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
sudo chmod -R 755 <project_dir>
sudo chown choyan:choyan -R <project_dir>

sudo chgrp -R www-data storage
sudo chgrp -R www-data bootstrap/cache

sudo chmod -R ug+rwx storage
sudo chmod -R ug+rwx bootstrap/cache

sudo find /path/to/your/laravel/root/directory -type f -exec chmod 664 {} \;    
sudo find /path/to/your/laravel/root/directory -type d -exec chmod 775 {} \;

#For migration:

php artisan migrate:refresh 
php artisan db:seed

#Some Problem solving:

composer install
composer dumpautoload
npm rebuild
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment