據說是廠商希望讓手機可以做的更薄,所以決定將 3.5mm 音源輸出孔移除,只保留 USB type C。
但個人認為這樣做有幾個不方便的地方:
- 只剩下一個對接端口,所以我沒辦法接 USB 並同時聽 USB 上的音樂或看影片。
- 已目前的技術,無線耳機 (藍芽等) 由於電池現有的技術瓶頸,通常很難持續運作很久;不然就是體積會變得很大。
- 一邊充電、一邊聽音樂變得不太可行。
軟體開發、伺服器和生活瑣事
據說是廠商希望讓手機可以做的更薄,所以決定將 3.5mm 音源輸出孔移除,只保留 USB type C。
但個人認為這樣做有幾個不方便的地方:
第一個要求 Laravel 要使用 HTTP or HTTPS (以下簡稱 protocol … 因為字太多了 .._Drz) 的方法,其實就是在「.env」做設定,例如:
APP_URL=http://zeroplex.tw
再來網路上應該會找到,要開發者在 AppServiceProvider 中加入設定:
URL::forceScheme('https');
這邊的 URL facade,可以從 config/app.php 中追蹤到,是 IlluminateRoutingUrlGenerator::class 的 alias,設定了 forceSheme() 以後,未來透過 UrlGenerator 建立的 link 都會是設定好的 protocol。
BUT …. 就是這個 BUT,若是遇到另一個其他的 method 來產生 URL (例如 IlluminateRoutingRedirector::route() …),這樣就可能吃到開發者設定的 protocol ,則由 Laravel 會自動抓進來的 request 來判斷該用什麼 protocol,若 application 剛好是靠 Nginx 在 handle HTTP SSL 的話,request 到 Laravel 這端時 HTTPS 就已經轉成 HTTP,導致 Laravel 以為 application 沒有上 HTTPS。
若要讓 reverse proxy 後面的 Laravel application 都固定用 HTTPS 的話,可以再到 app/Http/Middleware/TrustedProxy.php 去修改設定,讓 Laravel 識別 proxy 做出對應的動作 (給正確的 protocol)。
應該不少人有經驗,在使用 grep 時,要搜尋的關鍵字會用顏色 highlight 方便閱讀,例如:
$ ls -lh | grep php
-rw-rw-r-- 1 zero zero 178 Aug 22 19:15 autoload.php
drwxrwxr-x 3 zero zero 4.0K Aug 22 19:01 cakephp
drwxrwxr-x 5 zero zero 4.0K Aug 22 19:01 phpdocumentor
drwxrwxr-x 3 zero zero 4.0K Aug 22 19:01 phpoffice
drwxrwxr-x 3 zero zero 4.0K Aug 22 19:01 phpoption
drwxrwxr-x 3 zero zero 4.0K Aug 22 19:01 phpseclib
drwxrwxr-x 3 zero zero 4.0K Aug 22 19:01 phpspec
drwxrwxr-x 8 zero zero 4.0K Aug 22 19:01 phpunit
不過如果因為列表很長,在把搜尋結果 pipe 給 less 以後,顏色就消失了。
這其實是 grep 這邊會判斷 output 到哪一種型態的 I/O,像是後面接的是 bash pipe,grep 就會自動移除 ANSI color 的 syntax,畢竟不知道 pipe 資料給誰,如果後者不支援 ANSI color 就會變成亂碼。
如果很確定 pipe 後面的指令、工具支援 ANSI color 的指令,就可以下參數要求 grep 輸出顏色。例如:
$ ls -lh | grep php --color=always | less
-rw-rw-r-- 1 zero zero 178 Aug 22 19:15 autoload.php
drwxrwxr-x 3 zero zero 4.0K Aug 22 19:01 cakephp
drwxrwxr-x 5 zero zero 4.0K Aug 22 19:01 phpdocumentor
drwxrwxr-x 3 zero zero 4.0K Aug 22 19:01 phpoffice
drwxrwxr-x 3 zero zero 4.0K Aug 22 19:01 phpoption
drwxrwxr-x 3 zero zero 4.0K Aug 22 19:01 phpseclib
drwxrwxr-x 3 zero zero 4.0K Aug 22 19:01 phpspec
drwxrwxr-x 8 zero zero 4.0K Aug 22 19:01 phpunit
登入 Ubuntu 時,常會看到最底下會有一行字,提醒你主機是否需要重新開機:
Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-142-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
0 packages can be updated.
0 updates are security updates.
*** System restart required ***
追了一陣子,才知道判斷的方法非常簡單,只要到 /var/run 目錄下檢查是否有「reboot-required」的檔案即可。
例如:
$ ls /var/run
acpid.pid crond.reboot initctl log motd.dynamic resolvconf snapd.socket udev
acpid.socket dbus initramfs lvm mount rsyslogd.pid sshd unattended-upgrades.lock
agetty.reload dhclient.enp0s3.pid init.upgraded lvmetad.pid mysqld screen sshd.pid user
atd.pid dmeventd-client irqbalance.pid lxcfs network sendsigs.omit.d sudo utmp
blkid dmeventd-server iscsid.pid lxcfs.pid reboot-required shm systemd uuidd
crond.pid grub lock mdadm reboot-required.pkgs snapd-snap.socket tmpfiles.d xtables.lock
就這樣,沒了。