# Laravel Linux 環境安裝(包含nginx,php-fpm) ## :memo: Laravel 環境安裝 ### 前置作業 ``` apt-get update -y apt-get install curl -y apt-get install vim -y apt-get install git -y apt-get install net-tools -y 修復apt 有缺少的套件補足 apt --fix-missing update apt-get -f install ``` ### 環境建置(php,mysql,composer) ``` apt-get install zip -y apt-get install mysql-server -y apt-get install php -y apt-get install php-mbstring -y apt-get install php-xml -y apt-get install php-mysql -y php執行mysql apt-get install php-fpm -y nginx執行laravel用 curl -s https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer ``` ### composer權限設置 ``` chmod +x /usr/local/bin/composer ``` ### mysql更改密碼 ``` mysql -u root -p 以root權限進入mysql mysql > use mysql; mysql > ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH caching_sha2_password BY ‘你喜歡的密碼’; mysql> flush privileges; mysql重整 其他 mysql> CREATE DATABASE 名稱; 創建database mysql> DROP DATABASE 名稱; 刪除database mysql> CREATE USER 'deploy(帳號)'@'%(主機名稱)' IDENTIFIED BY '密碼'; 創建使用者 mysql > GRANT ALL PRIVILEGES ON database名稱.* TO 'deploy'@'%'; 赴於user databse權限 ``` ## :memo: nginx 安裝及使用 ### nginx 安裝 ``` apt-get install nginx -y apt-get autoremove --purge nginx -y 完全刪除 ``` ### nginx 基本使用 ``` nginx 執行 Nginx nginx -s reload 重啟 Nginx nginx -s stop 停止 Nginx nginx -t 可以確定nginx文件沒寫錯 service nginx start 執行 Nginx service nginx restart 重啟 Nginx service nginx stop 停止 Nginx ``` ### nginx 文件設定 /etc/nginx/sites-available/命名網址 ``` server { listen 7777; #監聽port root /www/laravel/public; #根目錄位置 add_header X-Frame-Options "SAMEORIGIN"; add_header X-Content-Type-Options "nosniff"; index 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.4-fpm.sock; #用php-fpm讀取檔案 fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; include fastcgi_params; } location ~ /\.(?!well-known).* { deny all; } } ``` ### nginx 啟用自己設定文件 ``` sudo ln -sf /etc/nginx/sites-available/react /etc/nginx/sites-enabled/ sudo ls -l /etc/nginx/sites-enabled 查詢所有link sudo rm /etc/nginx/sites-enabled/listen9999 刪除link ``` ### 查看nginx監聽的port ``` sudo netstat -nap | head -n 15 ``` ## :memo: laravel 運作 ### laravel 步驟 ``` composer install --optimize-autoloader --no-dev php artisan passport:install --force 需使用會員機制要加這行 php artisan key:generate php artisan config:cache php artisan route:cache php artisan view:cache php artisan migrate 建立資料庫 php artisan db:seed 新增假資料 ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up