پیشنیاز نصب php , laravel است .
sudo apt install php7.2 php7.2-curl php7.2-common php7.2-cli php7.2-mysql php7.2-mbstring php7.2-fpm php7.2-xml php7.2-zip -y
سپس باید برای Application خود دیتابیس بسازیم .پس به mysql یا mariadb نیاز داریم.در اینجا فرض میکنیم که شما یکی را از قبل نصب کرده اید.
sudo mysql
CREATE DATABASE <DB name>;
سپس یک یوزر با پسورد و همه ی امتیازات میسازیم.
GRANT ALL ON <your db name>.* TO '<your username>'@'localhost' IDENTIFIED BY '<your password>' WITH GRANT OPTION;
با exit از آن خارج میشویم.و برای چک کردن درستی کار کامنت زیر را میزنیم.
mysql -u <your username> -p
پس از وارد کردن پسورد با دستور زیر تمام دیتابیس های این یوزر را چک میکنیم. اگر دیتابیس ساخته شده را دیدیم همه چیز درست انجام شده و از این خارج میشویم.
show databases;
حال باید App خود را بسازیم.برای اینکار به composer نیاز داریم . پس اگر ان را از قبل نصب نکرده اید نصب کنید و دستور زیر را بزنید.
composer create-project --prefer-dist laravel/laravel <DB name>
وارد پوشه ای که با نام دیتابیس شما ساخته شده است شوید و دستور زیر را بزنید.
php artisan
در این پوشه فایل env. را به شکل زیر ویرایش میکنیم .
APP_NAME=<your app name>
APP_ENV=development
APP_KEY=APPLICATION_UNIQUE_KEY_DONT_COPY
APP_DEBUG=true
APP_URL=http://<your domain_or_IP>/
LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=<your database name >
DB_USERNAME=t<your database username>
DB_PASSWORD=<your database password>
این فولدر را به مسیر var/www/ میبریم.
sudo mv ~/mydb /var/www/mydb
و مجوز های آن را به شکل زیر تغییر میدهیم.
sudo chown -R www-data.www-data /var/www/mydb/storage
sudo chown -R www-data.www-data /var/www/mydb/bootstrap/cache
وارد مسیر زیر میشویم و فایلی به نام دیتابیس خود میسازیم.
sudo vim /etc/nginx/sites-available/<your db name >
و محتوای زیر را داخل آن کپی میکنیم.
server {
listen 80;
server_name <your domain_or_IP>;
root /var/www/<your database name>/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
index index.html index.htm index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params; }
location ~ /\.(?!well-known).* {
deny all;
}
}
سپس باید فایل را به در پوشه ی sites-enable لینک کنیم .
sudo ln -s /etc/nginx/sites-available/<your database name> /etc/nginx/sites-enabled/
چک میکنیم که همه چیز درست باشد.
sudo nginx -t
و nginx را دوباره راه اندازی میکنیم.
sudo systemctl restart nginx
با سرچ کردن ای پی سرور خود یا دامنه ی خود میتوانیم صفحه ی لاراول را ببینیم.