JavaScript 精選14堂課(一)


安裝軟體Node
執行 Node 
在命令提示字元下,執行 node  檔案.js

離開 Node   
輸入 .exit   或 Ctrl+D
console.log()
console.log()
是瀏覽器的開發者工具(web developer tool)顯示括號()內的資料。只要在瀏覽器開啟檔案,按一下F12就會顯示開發者工具並印出console.log()的訊息。
變數宣告
var 宣告變數 
方法: var 變數名稱
1.全域變數
不在函數內的變數都屬於全域範圍變數,此程式文件內都可以使用此一變數。
2.區域變數
當變數在函數之內宣告,那麼只有在這一個函數區域可以使用此一變數。
let 變數宣告
方法: let 變數名稱
var變數宣告的方式,常常讓人詬病。因為關鍵字認定的作用域只有函數,但是程式中的區塊不只有函數。程式的區塊敘述是以一對大跨號{}來界定,像是if、else、for、while等控制結構或是純粹定義範圍的純區塊{}等等都是區塊。
變數 Z 沒有宣告
使用 const 關鍵字宣告常數
Const 跟 Let 關鍵字一樣都是ES6新加入的宣告方式,跟let一樣,具有區塊作用域的概念,Const是用來宣告常數(Constants),也就是不變的常量,因此常數不能重複宣告,而且必須指定初始值,之後也不能再變更它的值。
parseInt():將字串轉換為整數
a = parsInt("35"); // a = 35
b = parsInt("55.87"); // b = 55
c = parsInt("3天"); // c = 3
d = parsInt("page 2"); // d = NaN
parseFloat():將字串轉換成浮點數
a = parsFloat("35.345"); // a = 35.345
b = parsFloat("55.87"); // b = 55.87
Number():將物件或字串轉換為數值
如果物件或字串無法轉換為數值,則傳回 NaN
a = Number("10a"); // a = NaN
b = Number("11.5"); // b = 11.5
c = Number("0x11"); // c = 17
d = Number("true"); // d = 1
e = Number(new Date()); // e = 1553671784021(傳回1970/1/1至今的毫秒)
typeof:傳回資料型別
* typeof 資料
* typeof(資料)

typeof("Eileen"); // 傳回 "string"
typeof 123; // 傳回 "number"
typeof null; // 傳回 "object"
查詢物件的屬性與方法
console.log( Date.prototype)
Chrome瀏覽器中按F12,中控選項(console)

簡易的防火牆 – UFW & GUFW

從 2008 年開始 Ubuntu 8.04 LTS 多了個簡單的防火牆「UFW (Uncomplicated Firewall)」,它簡化了 iptable 複雜的指令及參數,讓人們能快速上手,之後更出現了圖形介面的 GUFW (甚至連指令都免了)。原先為了 Ubuntu 而誕生的 UFW 現在也成功移植到基於 Debian 發展的 GNU/Linux (ezgo, Linux Mint) 以及 Arch Linux。 來源

UFW
若系統尚未預載 UFW,請手動安裝

# Debian, Ubuntu
$ sudo aptitude install ufw 

# Arch Linux
$ sudo pacman -S ufw

基礎操作

狀態查詢,預設為閒置 (inactive)

$ sudo ufw status
Status: inactive

啟動 UFW 服務 (enable)

$ sudo ufw enable

預設 (default) 全部阻擋 (deny)

$ sudo ufw default deny

允許 (allow) 所有的 ssh 埠口連線

$ sudo ufw allow ssh

允許來自 127.0.0.1 (本機) 的 3389 埠口連線 (xrdp)

$ sudo ufw allow from 127.0.0.1 to any port 3389

狀態查詢,已成功啟動 (active) 並加入自訂規則

$ sudo ufw status
Status: active

To            Action    From
--            ------    ----
22            ALLOW     Anywhere
3389        ALLOW     127.0.0.1

進階使用

允許來自 192.168.1.2 上所有連線

$ sudo ufw allow from 192.168.1.2

允許來自 192.168.2.1 ~ 192.168.2.254 的所有 22 埠口連線

$ sudo ufw allow from 192.168.2.1/24 to any port 22

阻擋來自 110.88.4.5 的 22 埠口連線

$ sudo ufw deny from 110.88.4.5 to any port 22

阻擋來自 27.16.3.1 ~ 27.16.3.254 的所有連線。

$ sudo ufw deny from 27.16.3.0/24

Ubuntu 20.04 安裝 Laravel

Step1. install Apacher Server
sudo apt install apache2

執行apache2伺服器

sudo sytemctl start apache2

開機啟動apache2

sudo systemctl enable apache2 

測試apach2執行情形

sudo systemctl status apache2
Step2. Installing PHP and its additional plugins

安裝PHP

sudo apt install php libapache2-mod-php php-mbstring php-cli php-bcmath php-json php-xml php-zip php-pdo php-common php-tokenizer php-mysql

測試安裝情形

php -v
Step3. creating a database

安裝MariaDB伺服器

sudo apt install mariadb-server

執行Mariadb

sudo mysql -u root -p

執行SQL語法

CREATE DATABASE laravel_db;
CREATE USER 'laravel_user'@'localhost' IDENTIFIED BY 'secretpassword';
GRANT ALL ON laravel_db.* TO 'laravel_user'@'localhost';
FLUSH PRIVILEGES;
QUIT;
Step 4: Install Composer

執行”連線到安裝網站,使用PHP安裝”

$ curl -sS https://getcomposer.org/installer | php

安裝完後設定

sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer
composer --version
Step 5: Install Laravel 8 on Ubuntu
cd /var/www/html
sudo composer create-project laravel/laravel laravelapp
sudo chown -R www-data:www-data /var/www/html/laravelapp
sudo chmod -R 775 /var/www/html/laravelapp/storage
cd laravelapp
php artisan
Step 6: Configure Apache to serve Laravel

 建立laravel.conf檔案

<VirtualHost *:80>
ServerName example.com
ServerAdmin admin@example.com
DocumentRoot /var/www/html/laravelapp/public
<Directory /var/www/html/laravelapp>
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

執行下列兩個指令,讓他們進入Apache rewiter 模組

sudo a2ensite laravel.conf
$ sudo a2enmod rewrite

重新啟動apache2

sudo systemctl restart apache2
Step 7: Run Laravel in a web browser

網站在 /var/www/html/laravelapp/public