sudo apt-get update
sudo apt-get install nginx
sudo ufw allow 'Nginx HTTP'
After
welcome to nginx !
page. If you do see it, nginx is installed correctly.
MySQL
Marketplace supports multiple databases like: MySQL,PostgreSQL, SQLite, SQL Server We will use MySQL.
sudo apt-get install mysql-server
mysql_secure_installation
that will guide you trough securing your MySQL connection.After secure installation is done, we need to create database for Marketplace by running series of commands:
mysql -u root -p
CREATE DATABASE marketplace DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
exit
(above code are 3 separate commands)
PHP
We need to install PHP (PHP-FPM) to run our code.
sudo apt-get install php7.2-fpm php-mysql
php -v
sudo nano /etc/php/7.2/fpm/php.ini
Inside this file, there is commented line
# cgi.fix_pathinfo=1
You need to uncomment the line and setvalue to
cgi.fix_pathinfo=0
(without #)
In order for changes to take effect, php-fpm must be restarted.
sudo systemctl restart php7.2-fpm
Now we need to install some PHP extensions that are required by Marketplace as well as composer and unzip tools
sudo apt-get install php7.2-mbstring php7.2-xml php7.2-xmlrpc php7.2-gmp php7.2-curl php7.2-gd composer unzip -y
(Above code is single command)
Elasticsearch
Marketplace uses Elasticsearch software that provices great search speeds and flexibility.
Elasticsearch requires Java in order to run
Oracle JDK
Add repository to apt
sudo add-apt-repository ppa:webupd8team/java
Update apt
sudo apt update
Install Java:
sudo apt install oracle-java8-installer
To see if Java is installed correctly run:
sudo update-alternatives --config java
Exit out of the command. You should see the path similar to this:
/usr/lib/jvm/java-8-oracle/jre/bin/java
now we need to use that path and create environment variable
sudo nano /etc/environment
At the bottom of the file add
JAVA_HOME="/usr/lib/jvm/java-8-oracle/jre/bin/java"
(Based on path above, if yours is
In order for changes to take effect we need to reload environment file
source /etc/environment
To check if everything is working enter:
echo $JAVA_HOME
Command should give same path as before as output.
Elasticsearch installation
Now
wget https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/deb/elasticsearch/2.3.1/elasticsearch-2.3.1.deb
(Above code is single command)Download
.deb
package
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/barcelona-vs-dynamo-kiev-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/borussia-dortmund-vs-club-brugge-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/chelsea-vs-stade-rennes-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/club-brugge-vs-borussia-dortmund-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/dynamo-kiev-vs-barcelona-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/ferencvaros-vs-juventus-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/grammy-nominations-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/grammy-nominations-live-strea-m.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/grammy-nominations-live-str-eam.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/grammy-nominations-live-st-ream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/grammy-nominations-live-s-tream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/grammy-nominations-live-stream-free.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/grammy-nominations-live-streaming.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/how-to-watch.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/istanbul-basaksehir-vs-man-united-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/juventus-vs-ferencvaros-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/krasnodar-vs-sevilla-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/lazio-vs-zenit-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/manchester-united-vs-istanbul-basaksehir-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/man-united-vs-istanbul-basaksehir-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/man-utd-vs-istanbul-basaksehir-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/paris-saint-germain-vs-rb-leipzig-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/psg-vs-rb-leipzig-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/rb-leipzig-vs-paris-saint-germain-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/rb-leipzig-vs-psg-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/sevilla-vs-krasnodar-live-stream_0.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/stade-rennes-vs-chelsea-live-stream.pdf
https://cbssm.med.umich.edu/sites/default/files/webform/recommendation-letters/zenit-vs-lazio-live-stream.pdf
https://zmgkcikpveygbetphh.medium.com/trump-news-live-stocks-surge-over-biden-transition-as-president-vows-big-lawsuit-in-randy-e20d4b5986b4
https://zmgkcikpveygbetphh.medium.com/us-president-elect-joe-biden-will-formally-introduce-the-first-people-he-has-chosen-for-his-47643adc605e
https://vpb70231.medium.com/biden-tears-into-trumps-refusal-to-concede-meets-with-governors-about-covid-49c759387082
https://rdk56733.medium.com/covid-19-live-updates-as-crisis-deepens-biden-team-is-to-be-briefed-on-disjointed-u-s-response-76950fe4f3e3
https://0paste.com/109972
https://notes.io/MLaJ
https://paste2.org/y9fCU8Y2
https://slexy.org/view/s215glyBAQ
https://paste.firnsy.com/paste/MX6uTwuAKwI
https://dumpz.org/aGafdHtnWwDy
https://p.teknik.io/evCAx
https://pasteio.com/xFVt93cziUf8
https://paste.by/N3Y2CSM6M7
https://pastebin.com/2QRAnCjv
https://paste.gnome.org/pyfnsmxun
https://friendpaste.com/3dhMmLA4J99d2lEmH9Mh39
https://www.onlinegdb.com/
https://pastelink.net/2a9wk
http://www.mpaste.com/p/vtL
https://paste.ee/p/Vlkz5
https://www.pastery.net/tqmbaw/
https://paste.tbee-clan.de/BXP7v#
https://paste.feed-the-beast.com/view/ce8245f2
https://bpa.st/57SQ
https://ideone.com/rEx5cX
https://paiza.io/projects/IO25gMbG68yN3IZ3GCJ1Ew?language=php
https://dpaste.org/Hhpk
http://www.paste4btc.com/LfwmkqRx
https://paste.centos.org/view/7cdad655
http://paste.jp/fb3cae00/
https://www.43ft.com/43FT/viewtopic.php?f=126&t=2035919
https://dcm.shivtr.com/forum_threads/3273370
https://master-land.net/Thread-dfsdfdsfsdf
https://torgi.gov.ru/forum/posts/list/0/150119.page#182763
http://www.clashofclans-tools.com/Thread-33795/dsfsdfdsfds
http://www.arcoastur.com/foro/viewtopic.php?p=127104#127104
https://www.pckitcj.com/posts/list/0/8190.page#13531
https://kazan.ros-spravka.ru/forum/messages/forum9/message60486/21466-dsfsdfsdfdsf/?result=new#message60486
http://80scartoons.net/forum/viewtopic.php?p=224855#224855
http://fireblade.ru/index.php?showtopic=65714
http://www.themiddleclassalliance.com/forums/showthread.php?52761-dfsdfdsf&p=59143#post59143
http://www.4mark.net/story/2841398/yugygghhf
https://caribbeanfever.com/photo/albums/dsfdsfsdfsd
http://officialguccimane.ning.com/photo/albums/ghghgfh
http://www.onfeetnation.com/profiles/blogs/sdfdsfdsf-sdfdsf
http://higgs-tours.ning.com/photo/albums/sdfdsfdsf
http://network-marketing.ning.com/profiles/blogs/dfdsfsdfds
http://recampus.ning.com/profiles/blogs/gfdgdfgfdg
http://millionairex3.ning.com/profiles/blogs/dfgdgfdgfdg
http://beterhbo.ning.com/profiles/blogs/ddsfdsfsdfds
http://korsika.ning.com/profiles/blogs/khjkhjkjhkjhk
http://mcdonaldauto.ning.com/profiles/blogs/hggfhghgfhgfh
http://sfbats.ning.com/profiles/blogs/hgfhgfhgfhgfh
http://summerschooldns.ning.com/profiles/blogs/ihjhjkkkkj
http://zacriley.ning.com/profiles/blogs/yugygghhf
http://divasunlimited.ning.com/profiles/blogs/gytyghvgh
https://www.peeranswer.com/question/5fbd30cd9e41a7d666dec2e9
https://blog.goo.ne.jp/ghjjjhjh/e/764379c8954197acbda53f628c80888c
https://www.peeranswer.com/question/5fbd2f449e41a7d666dec26c
https://becot41954.hatenablog.com/entry/2020/11/25/011623
https://becot41954.substack.com/p/tyuytututu
https://www.posts123.com/post/909970/dfgfdgfdgdgfd
https://www.topfind88.com/post/909971/dfgjghjgjgjgjgj
https://www.mydigoo.com/forums-topicdetail-200796.html
https://becot41954.tumblr.com/post/635683072671727616/jhkhkjhkjhkhkhjk
https://note.com/becot41954/n/nc5c650433253
https://www.page2share.com/page/521852/gfhgfhkljljljl
https://dpaste.org/pRC4
https://friendpaste.com/39HnuLAeJbnyDcbA2RtLTy
https://pasteio.com/xFsndonj3M5V
https://pastebin.com/SvBtxyXG
https://paiza.io/projects/IRBF7NuOAjnXkh6UtIV6mA?language=php
https://notes.io/MLaW
https://www.hybrid-analysis.com/sample/bbe28cdee4b70a3159ce6208d8f364a541b6175913d6d6d5fc880e38d9f696c4
http://www.4mark.net/story/2841406/dfgfdgfdgdgfddfgdgfdgdgdg
http://www.lambdafind.com/link/618637/dfgfdgfdgdgfddfsfsfsfsfd
http://contest.japias.jp/tqj2007/90019/cgi-bin/yybbs.cgi
https://rentry.co/87bxa
http://hirose-ryoko.com/cgi/yybbs/yybbs.cgi
http://www.otomotakeshi.com/bbs/index.cgi?
https://www.anthonyroberts.org.uk/guestbook/
https://www.guest-articles.com/health/dfhgzdfhzdfh-24-11-2020
http://www.gakkoushinrishi.jp/saigai/bbs/anpi/read.cgi?list=tree&no=22108229
https://www.guest-articles.com/attorney/dfgfdgfdgfdgfdg-24-11-2020
https://www.anthonyroberts.org.uk/guestbook/
http://hirose-ryoko.com/cgi/yybbs/yybbs.cgi?list=
https://rentry.co/kybuq
It was actually both incoming and
sudo dpkg -i elasticsearch-2.3.1.deb
We want Elasticsearch service to start when system boots up, so we enter:
sudo systemctl enable elasticsearch.service
Now we need to start it up.
sudo systemctl start elasticsearch
Give it 10-15 seconds
curl -X GET "localhost:9200"
If you see information about your Elasticsearch engine, then installation is completed successfully.
Elasticsearch installation error
Elasticsearch has some problems on servers with low memory. In order to make it work we need to limit maxmemory Java is using. To check if
sudo service elasticsearch status
If you see
"There is insufficient memory for the Java Runtime..."
inside the text, continue, if not then your installation is not done properly and you should remove all Elasticsearch packages and go back toinstalling it from the start.
Enter:
edit /etc/elasticsearch/jvm.options
Change to lower memory
-Xms512m
-Xmx512m
Then restart Elasticsearch:
sudo systemctl restart elasticsearch
Give it 10-15 seconds and then run:
curl -X GET "localhost:9200"
If you see information about your Elasticsearch engine, then installation is completed successfully.
Redis
This step is optional, but will greatly increase your app performance.
sudo apt install redis-server
After redis installation is done open redis config file:
sudo nano /etc/redis/redis.conf
In there find supervised and change it from supervised no to supervised systemd and save the file.
Reload Redis with:
sudo systemctl restart redis.service
And check if its running with
sudo systemctl status redis.service
To check if Redis is installed correctly enter:
redis-cli
it should open Redis interface running on port 6379. By entering ping you should get response PONG If everything is fine, type exit and exit redis-cli.
Node and NPM
We need NodeJs and NPM in order to compile our client side css files.
Install NodeJs:
sudo apt-get install -y nodejs
Install NPM:
sudo apt-get install -y npm
To check if they are installed properly run:
node -v npm -v
(Above code are 2 commands)
Files
Now we need to copy Marketplace files to the server. Make new directory inside
/var/www
and put all files there. You can call it whatever you want.
Permissions
After files are copied we need to give them permissions.Run theese commands based on your file path:
sudo chown -R www-data:www-data /var/www/DIRECTORY_NAME/public
sudo chmod 755 /var/www
sudo chmod -R 755 /var/www/DIRECTORY_NAME/bootstrap/cache
sudo chmod -R 755 /var/www/DIRECTORY_NAME/storage
Run:
php artisan storage:link
To link public directory with storage.Make this folder: (for product pictures)
sudo mkdir /var/www/DIRECTORY_NAME/storage/public/products
And give it permissions
sudo chmod -R 755 /var/www/DIRECTORY_NAME/storage/public/products
sudo chgrp -R www-data storage/storage/public/products
sudo chmod -R ug+rwx storage/storage/public/products
(Above code are 3 commands)
Installation
After everything above is done, change current directory to the
DIRECTORY_NAME you previously chose(marketplace files) and run series of commands to install all required dependencies:
composer install
npm install
npm run prod
cp .env.example .env
php artisan key:generate
(Above code are 4 commands)
Then open your .env file and insert database connection details:
sudo nano .env
Example of database configuration:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=marketplace
DB_USERNAME=root
DB_PASSWORD=password
If you did install redis, change driver from
sync to redis
CACHE_DRIVER=redis
Now you can try running:
php artisan migrate
Now, you can create some dummy data, with:
php artisan db:seed
f both commands ran fine, your connection to database is configured fine. If you want to get rid of dummydata, run:
php artisan migrate:fresh
Your basic marketplace is working now, congratulations !
Connecting coins
Marketplace has support for various coins. Each coin has its on prefix in .env file as well as connectionparameters. Connection paramters are:
HOST
PORT
USERNAME
PASSWORD
And coin prefixes are:
Bitcoin - BITCOIND
Litecoin - LITECOIN
Monero - MONERO
Pivx - PIVX
Dash - DASH
Verge - VERGE
Bitcoin Cash - BITCOIN_CASH
Knowing this, you can input connection parameters in
.env accordingly. For example, for Bitcoin you wouldenter
BITCOIND_HOST=server_ip, or for Dash
DASH_PASSWORD=password
.
Marketplace configuration
Marketplace configuration is split into multiple files located in
config folder. Main one is marketplace.php You will find most of the config options described or self-explanatory. Other than marketplace.php
You can configure levels and experience in experience.php
and marketplace addresses for receiving profits in
coins.php
Contact
If you find any error in code, please contact me at:Telegram:
@eckmar
(Best way to reach me)XMPP:
[email protected]
(Main account) or
[email protected]