Commands to run in interactive sessions can go here

魚殼(Fish Shell):如何移除歡迎訊息 如何在魚殼(Fish Shell)中移除 “Welcome to fish, the friendly interactive shell” 歡迎訊息。 我遇到了這個「問題」。 每次打開 shell 時,我都會看到這三行文字。 這是魚殼(Fish Shell)的預設訊息。 我想要將它們移除。 以下是我所做的方法。 我打開了 ~/.config/fish/config.fish。 code ~/.config/fish/config.fish 文件內容如下: if status is-interactive # Commands to run in interactive sessions can go here end fish\_add\_path /opt/homebrew/opt/[[email protected]](/cdn-cgi/l/email-protection)/bin 我在最後加上了 set fish_greeting "": if status is-interactive # Commands to run in interactive sessions can go here end fish\_add\_path /opt/homebrew/opt/[[email protected]](/cdn-cgi/l/email-protection)/bin set fish\_greeting "" 現在我的提示符如下:

Node.js,開發與生產環境的差異

了解如何為生產和開發環境設置不同的配置。 你可以為生產與開發環境設置不同的配置。 Node.js 假設它一直在開發環境中運行。但你可以通過設置 NODE_ENV=production 的環境變量,告訴 Node.js 你正在生產環境中運行。 通常,在 shell 中執行以下命令即可完成此操作: export NODE_ENV=production 但最好將其放在您的 shell 配置文件中(例如使用 Bash shell 的 .bash_profile),以便在系統重新啟動時此設置仍然有效。 你還可以在應用程序初始化命令之前加上環境變量: NODE_ENV=production node app.js 這個環境變量是一個經常在外部庫中使用的約定。 將環境設置為 production 通常可以確保: 日誌保持在最低限度的關鍵級別 融入更多的緩存層以優化性能 例如,Express 使用的模板庫 Pug 如果 NODE_ENV 沒有設置為 production,則會在調試模式下編譯。在開發模式下,每次請求都會編譯 Express 視圖,而在生產模式下則會被緩存。這只是其中一個例子,還有很多其他例子。 Express 提供了特定於環境的配置鉤子,根據 NODE_ENV 變量的值自動調用: app.configure('development', () => { //... }) app.configure('production', () => { //... }) app.configure('production', 'staging', () => { //... }) 例如,你可以使用這個來為不同模式設置不同的錯誤處理程序: app.configure('development', () => { app.use(express.errorHandler({ dumpExceptions: true, showStack: true })); }) app....

如何修復 \"Your custom PostCSS configuration must export a `plugins` key.\" 的錯誤

我更新了一個舊的 Next.js 應用程式,當我執行 npm run dev 時出現了這個錯誤: error - ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[2].oneOf[8].use[1]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[2].oneOf[8].use[2]!./styles/globals.css Error: Your custom PostCSS configuration must export a `plugins` key. 然後我新增了一個 postcss.config.json 檔案,內容如下: { "plugins": [ ] } 這樣應用程式又開始運作了。

如何在本地主機上配置React應用程序的HTTPS

如果您使用create-react-app建立應用程序並在本地計算機上運行它,則默認情況下它將使用HTTP協議進行服務。 任何在生產環境運行的應用程序都將使用HTTPS,它是HTTP的安全版本。 在大多數情況下,您將輕而易舉地獲得HTTPS,特別是如果您使用像Netlify或Vercel這樣的現代平台來提供應用程序的話。 但是在本地環境中,情況會比我們希望的要複雜一些。 讓我們看看您可以如何實現這一點! 正如您所知,create-react-app應用程序是通過npm run start或簡單地通過npm start運行的,因為在package.json文件的scripts部分中,我們有這一行: "start": "react-scripts start" 將其更改為: "start": "HTTPS=true react-scripts start" 這將HTTPS環境變量設置為true值。 但這還不夠。 現在,我們還需要生成一個本地證書。這一步對於任何應用程序都是有效的,不僅僅限於create-react-app應用程序,但我將在本文中包含它作為參考。 注意:我在macOS上運行這些命令。Linux應該是同樣的。我對Windows不提供保證。 在項目的根文件夾中運行: openssl req -x509 -newkey rsa:2048 -keyout keytmp.pem -out cert.pem -days 365 然後運行: openssl rsa -in keytmp.pem -out key.pem 現在,您應該在文件夾中看到cert.pem和key.pem文件。 現在將package.json文件中的start腳本更改為: "start": "export HTTPS=true&&SSL\_CRT\_FILE=cert.pem&&SSL\_KEY\_FILE=key.pem react-scripts start", 如果您運行npm run start,並訪問https://localhost:3000(或您的應用程序使用的端口,如果不同-在我的情況下是3008),您應該會看到此警告消息: 要在macOS上解決此問題,請按照我的教程如何在macOS上安裝本地證書的說明進行操作。 一旦您這樣做了,您就可以正常查看使用SSL提供的應用程序了:

將別名和其他配置永久保存在Fish Shell中

備忘錄:無論在Fish Shell(或任何其他配置)中創建別名時,請將它們添加到~/.config/fish/config.fish文件中。 這樣它們就能在系統重啟後持久保存。 例如,我將ls設置為exa的別名,並將cat設置為bat的別名:

用於從子文件夾中提供多個Node.js應用程序的簡單nginx反向代理

最近我在DigitalOcean上設置了一個VPS,以在同一域名下運行幾個不同的Node.js腳本。 現在,您無法使兩個不同的Node.js應用程序監聽同一個端口,因此必須使用反向代理。常用的方法是使用Nginx。 我將每個Node應用程序設置為在自己的子文件夾中運行,所以我需要編輯Nginx配置: sudo nano /etc/nginx/sites-available/default 配置文件原始內容如下: server { listen 80 default\_server; listen [::]:80 default\_server; root /var/www/html; index index.html index.htm index.nginx-debian.html; server\_name hellonode; location ^~ /assets/ { gzip\_static on; expires 12h; add\_header Cache-Control public; } location / { proxy\_http\_version 1.1; proxy\_cache\_bypass $http\_upgrade; proxy\_set\_header Upgrade $http\_upgrade; proxy\_set\_header Connection 'upgrade'; proxy\_set\_header Host $host; proxy\_set\_header X-Real-IP $remote\_addr; proxy\_set\_header X-Forwarded-For $proxy\_add\_x\_forwarded\_for; proxy\_set\_header X-Forwarded-Proto $scheme; proxy\_pass http://localhost:3000; } } 這個配置允許一個Node.js應用程序在端口3000上運行,並且是主要在/處提供服務的應用程序。 我希望在/myservice下運行一個應用程序,所以我創建了一個在端口3001上監聽的Node應用程序,並添加了以下配置: location /myservice { rewrite ^/myservice/(....

配置 macOS 命令行

如何從零配置 macOS 終端,使其成為你日常開發的完美工具。 也可以查看我的如何使用 macOS 終端文章。 如何設定 macOS 命令行 我剛剛買了一台新的 MacBook Air 來取代我的心愛的 2010 MacBook Pro,於是我決定記錄一下配置命令行的流程。 默認情況下,我們有以下內容: 在本文結束時,我們將擁有一個更好的終端。 首先,安裝 Homebrew。前往 https://brew.sh,並在終端中複製下面的魔法公式: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 這將完成安裝 Brew 軟件包管理器,這是一個不可思議的工具。這需要一些時間,因為它需要從 Apple 下載 Xcode 命令行工具。 接下來,我們安裝 Fish Shell。運行 brew install fish 命令。 現在,我們需要將 Fish 設置為默認的 shell。運行 sudo vim /etc/shells 命令,然後按下 i 鍵進入插入模式,接著在列表末尾添加 /opt/homebrew/bin/fish。 然後按下 esc 鍵,然後鍵入 :wq 來保存文件並退出編輯器。 輸入 chsh -s /opt/homebrew/bin/fish 命令將默認 shell 更改為 Fish。 試著打開一個新的終端窗口,你將看到 Fish 的歡迎信息: 現在來添加一些顏色。輸入 fish_config 進入(令人驚豔的)配置工具:...