記錄用
去除換行
str.replace(/\r\n|\n/g,"");
去除空格
str.replace(/\s+/g, "");
去除換行
str.replace(/\r\n|\n/g,"");
去除空格
str.replace(/\s+/g, "");
struct ngx_http_upstream_srv_conf_s {
ngx_array_t *values;
ngx_array_t *lengths;
ngx_uint_t retries;
in_port_t default_port;
wget -qO- https://toolbelt.heroku.com/install-ubuntu.sh | sh
wget -qO- https://toolbelt.heroku.com/install.sh | sh
echo "$ echo 'PATH=\"/usr/local/heroku/bin:\$PATH\"' >> ~/.bashrc"
$ heroku login Enter your Heroku credentials. Email: adam@example.com Password: Could not find an existing public key. Would you like to generate one? [Yn] Generating new SSH public key. Uploading ssh public key /Users/adam/.ssh/id_rsa.pub
$ cd ~/myapp $ heroku create Creating stark-fog-398... done, stack is cedar http://stark-fog-398.herokuapp.com/ | git@heroku.com:stark-fog-398.git Git remote heroku added
$ npm install connect-mongo
mongoStore = require('connect-mongo')(express);
app.configure(function(){
...
app.use(express.session({
secret: "@#$TYHBVGHJIY^TWEYKJHNBGFDWGHJKUYTWE#$%^&*&^%$#",
store: new mongoStore({
host: setting.mongo.host,
port: setting.mongo.port,
db: 'examOnlineSessions',
collection: 'sessions'
})
}));
...
})
With connect:
var connect = require('connect');
var MongoStore = require('connect-mongo')(connect);
user nginx;
worker_processes 8;
worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;
worker_rlimit_nofile 1048576;
error_log /var/log/nginx/error.log;
#error_log /var/log/nginx/error.log notice;
#error_log /var/log/nginx/error.log info;
pid /run/nginx.pid;
events {
use epoll;
worker_connections 1048576;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
gzip on;
gzip_comp_level 6;
gzip_vary on;
gzip_min_length 1000;
gzip_proxied any;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_buffers 16 8k;
include /etc/nginx/conf.d/*.conf;
upstream node_server {
server 192.168.1.1:3000 weight=2;
server 192.168.1.1:3001 weight=1;
}
}
>>> user nginx;
nginx 為使用者名稱
>>> worker_processes 8;
需要開啟的 worker 數量,盡量以核心數為設定標準
>>> worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;
綁定每個 worker process 給 CPU 核心
>>> worker_rlimit_nofile 1048576;
要和系统單一 process 的 open file 數量一致
>>> error_log /var/log/nginx/error.log;
錯誤紀錄檔 參考
>>> pid /run/nginx.pid;
Pid文件位置
>>> use epoll;
epoll 是 I/O Multiplexing 中的一種方式, 用於linux kernel 2.6以上,可提高nginx的效能
>>> worker_connections 1048576;
每個 worker 的大連接數,理論上每台 nginx 伺服器的最大連接數為 worker_processes * worker_connections
>>> include /etc/nginx/mime.types;
設定MIME, 由mime.type 檔案來定義
>>> default_type application/octet-stream;
設定預設的MIME类型
>>> log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
設定紀錄檔的格式
>>> access_log /var/log/nginx/access.log main;
設定 access 紀錄檔
>>> sendfile on;
開啟 sendfile(), 指定Nginx 使用 kernel 的 sendfile 函數來提高 web 傳輸文件的效率,一般設為 on,如果用來進行下載等應用 磁碟IO 重負載的應用,可設為 off,以平衡磁碟與網路 I/O 處理速度,降低系統的負載。 P.S.如果圖片顯示不正常把這個改成off
>>> tcp_nopush on;
開啟 TcpNopush(TCP_CORK), 採用 Nagle 算法較小的 packet 存入緩衝區直到蓄足一個 frame 後一起發送,這樣可以最小化所發送的 message 的數量來提高應用程序的效率,用以縮減網路傳輸過程中的封包數量,並減輕網絡擁塞問題。 可參考 TcpNopush
>>> keepalive_timeout 65 5;
第一個參數指定 Client 端連接保持活動的限制時間,在這個時間之後,Server 會關掉連接,第二個參數是可選的,它指定了消息頭保持活動的有效時間,即響應中的 timeout=time,它可以告訴某些瀏覽器關閉連接,因此服務器就不必關閉連接了,如果沒有這個參數,Nginx不會發送Keep-Alive頭。
>>> gzip on;
開啟gzip壓縮 參考資料: GzipModule
>>> include /etc/nginx/conf.d/*.conf;
讀取來自於 /etc/nginx/conf.d 資料夾的 config 檔案, 預設的 Server 設定在 conf.d/default.conf
>>> upstream node_server {
server 192.168.1.146:3000 weight=2;
server 192.168.1.146:3001 weight=1;
}
開啟負載平衡, weight 是用來設定 server 分配權重
msg = JSON.stringify(json);
res.writeHead(200, {
"Content-Type": "application/json;",
"Content-Length": msg.length
});
res.end(msg);
server {
listen 80;
server_name localnginx1;
charset utf-8;
location / {
proxy_pass http://127.0.0.1:3000;
}
}
server {
listen 80;
server_name localnginx2;
charset utf-8;
location / {
rewrite ^(.*) http://127.0.0.1:3000;
}
location /google {
rewrite ^ http://www.google.com.tw;
}
}
systemctl enable nginx.service成功之後 輸入啟動指令
systemctl start nginx.service
vim /etc/conf.d/localnginx.conf
server {
listen 80;
server_name localnginx;
charset utf-8;
location / {
root /home/sean/nginx/;
index index.html index.htm;
}
}
此設定檔設定偵聽 80 port
並在遇到server name為localnginx時
使用此設定檔
粗體的部份就是設定此server的初始目錄在哪
存檔完畢後輸入重新啟動nginx
systemctl reload nginx.service在對應的目錄底下放入index.html後 如此一來在瀏覽器上就能看到結果囉
rule ='^[0-9a-zA-Z\u4e00-\u9fa5]+$'
str = '只能輸入中文與English123345';
var regexp = new RegExp(rule);
console.log(regexp.test( str ));
function isChinese ( str ) {
var regx = /[^\u4e00-\u9fa5]/;
if ( regx.test( str ) ){
return false;
} else {
return true;
}
}
alert(isChinese("中文"));
範例網址: http://jsfiddle.net/dNVDV/5/
<link href="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.css" rel="stylesheet" type="text/css"></link> <script src="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js" type="text/javascript"> </script>
onload='prettyPrint();'
<pre class="prettyprint code"> 輸入想顯示的程式碼 </pre>
.post .code {
display: block;
font-family: Courier New;
font-size: 10pt;
overflow:auto;
background: #f3f3f3;
border: 1px solid #ddd;
padding: 10px 10px 10px 21px;
line-height: 1.2;
border-radius:3px;
}
A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse. No Java virtual machine was found after searching the following locations:C:\eclipse\jre\bin\javaw.exejavaw.exe in your current PATH