• 关于
  • 国学
    • 二十四诗品
  • 释我疑虑
    • 地藏
    • 金刚
  • Bootstrap
    • Online Tools / Live Editors
  • NodeJS
    • NodeJS MVC 框架
    • NodeJS 框架
Dez anos

Category Archives: 开源

wp site 升级到 ssl

2016/02/13 02:13 / anos

很坑。

若干弯路之后,发现,必须apache中建立wp blog的ssl站点,并确保其已经正确工作之后,前置代理里面正确地向该ssl站点转发,才不会出现“太多重定向”错误。

同时,要dump数据库脚本,替换一切http://blog.以及http:\/\/blog.这样的死链接。

最后,升级到ssl之后,不要想还支持http了,只能做自动跳转去掉http支持,因为,死链接太多了。

如何导出全部WordPress的内容呢?

我确实打算放弃WP,使用别的方案了,明明有免费得github方案我却一直被套而不能去用。

衰啊

Posted in: 开源

mysql连接数扩大问题

2016/01/08 13:35 / anos

以MySQL 5.6为例,两个地方需要修改,第一是系统的文件数限制:

nano /etc/rc.local

unlimit -n 65536

第二是mysql的my.cnf文件,例如修改/etc/mysql/my.cnf:

settings

[mysqld]
explicit_defaults_for_timestamp
open_files_limit = 10240
max_connections = 5000
max_user_connections = 2000
lower_case_table_name = 1

然后重启mysql服务即可。

 

此文档有待继续完善。

 

Posted in: 开源, 技术

nginx sub-path 反向代理 nodejs 服务器

2015/12/29 21:42 / anos

nginx的反向代理功能,能够将一个上下文路径映射到另一个url去,例如:用户访问 http://a.exam.com/node1/ 将会访问到同一服务器的另一端口 http://127.0.0.1:9000/ 上去。

而基于nodejs的web服务,常常带有/bower_components/参考。nginx处理这类绝对url时并不在行(rewrite方案我尚未深究),所以,我采用的下面的方案来变相解决问题:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
server_name
exam.com www.exam.com;
root /var/www;
index index.html index.htm index.php;
location / {
    try_files $uri $uri/ @apache; # =404;
}
location ~ ^/(bower_components|browser-sync) {
    try_files $uri $uri/ @node1_bower;
}
location ~ ^/node1 {
    try_files $uri $uri/ @node1;
}
location @node1 {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $host;
    proxy_set_header X-NginX-Proxy true;
    rewrite ^/node1(.*) $1 break;
    proxy_pass http://127.0.0.1:9000;
    proxy_redirect off;
}
location @node1_bower {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $host;
    proxy_set_header X-NginX-Proxy true;
    proxy_pass http://127.0.0.1:9000;
    proxy_redirect off;
}

事实证明,这样确实能处理单个nodejs应用的反向代理,算是临时方案吧。

至于html中的url rewrite问题,留待以后再找机会。

Posted in: 开源, 技术

解决WP在增加了nginx前端后产生重定向循环的问题

2015/12/25 12:33 / anos

故障现象是,仅仅出现在直接打开首页时。如果打开子页面就不会出错。

我们是增加了nginx前置代理,目的倒不是为了负载均衡,只是为了分流静态内容,然而副作用就是前面说到的状况。

网上已经有很多人处理过了,这里备份一份,因为对我来讲,只有下面这一种方法是行之有效的。

对于WP首页无限重定向问题,可以通过修改以下两个文件中的任何一个来解决。

这两个文件均位于wp_includes文件夹下。首先,对于canonical.php文件的修改,利用文本编辑器打开该文件,开头注释下面就可以找到如下语句:

C++
1
2
function redirect_canonical( $requested_url = null, $do_redirect = true ) {
把true修改为false即可。

其次,对于template-loader.php文件,打开之后找到如下代码片段:

C++
1
if ( defined('WP_USE_THEMES') && WP_USE_THEMES )do_action('template_redirect');

把这段代码删除或者用PHP的注释符号注释掉即可,你可以用“#”多行注释来注释掉此段代码。

还有一种情况也会出现重定向过多的情况。不过这个是在文章以及评论RSS这个页面上。由于重定向导致你的博客无法被订阅者收到更新。这种情况大多是由于安装feedburner插件所致,卸载此插件即可解决问题。

Posted in: 开源

再次升级GITLAB

2015/12/23 18:26 / anos

昨天说了GITLAB很活跃,我升到8.2.3,立即得到提示又说新的有了,恩,好吧,是8.3.0。

今天于是把digitalocean的和公司的都一起做了。

公司一直在跑gitlab 7.10,老早就不爽了,今次拿了授权干脆piapiapia了它。唯一的问题就是这个服务器在国内,无法平滑升级,小小有点波折,首先在国外download了rpm,然后scp进来,然后手工安装的rpm包:

C++
1
wget -c https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/6/gitlab-ce-8.3.0-ce.0.el6.x86_64.rpm/download

(1)停止git服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
gitlab-ctl stop nginx
也可以用一条命令搞定:gitlab-ctl stop
(2)备份数据,防止数据升级失败,数据丢失
gitlab-rake gitlab:backup:create
(3)安装升级包
rpm -Uvh gitlab-ce-8.3.0-ce.0.el6.x86_64.rpm
(4)重新载入配置文件:
gitlab-ctl reconfigure
(5)重启git服务
gitlab-ctl restart

 

最后一提,在国内环境,升级gitlab主要是死在amazonaws上,作为一个替代,Gogs可能是一个选择,这是Go开发的类似环境,功能还不够强,没有代码审查的功能,若干细节也都还差,但用惯了GitHub/Gitlab的人真心表示只能是这种工作流了,国内的仿造品不做评论。

Posted in: 开源, 技术

最近GITLAB似乎很活跃的样子

2015/12/22 12:16 / anos

我好像已经频繁升级了3次,现在再一次被通知,于是升吧,这次会是8.2.1?还是8.3.0,甚至是8.5.1呢?

新版本的新特性,小小登记一下:

下一次升级时一定要记住用screen!!话说到此,好像现在不时兴screen了,据说应该是tmux之类的了,是吧?

结果,它们说升级到了8.2.3版本。

这一系列8.2.x版本基本上都是解决bug,没什么可说的。

至于8.3.0目前有一个rc版,加上了CAS支持,然而对于我的私服来讲没什么N用,到时给集团型的开发团队很有用的酱紫。

最重要的一个功能,在线获知forked source updates并应用到forked master上,不知道何年何月才会有。使用upstream的方案真的是丑恶到了极点了。

有兴趣的孩子可以去看他家的通告:https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG

OK,又说tmux不?不了,这次不了。下次或许。

Posted in: 开源, 技术

Mac, 查看本机IP地址以及更多

2015/12/22 11:27 / anos

直接上代码,适用于Bash环境:

C++
1
2
3
4
5
6
alias myip='curl bot.whatismyipaddress.com'
alias myipln='curl bot.whatismyipaddress.com ; echo'
alias mylocalip='ifconfig|grep inet[^6]|grep -Ev '\''((127.0.0.1)|(192.168.2)|(169.254))'\''|grep -Eo '\''inet [^ ]+'\''|grep -Eo '\''\d+.\d+.\d+.\d+'\'''
alias mylocalgw='route -n get 163.com|grep gateway|grep -Eo '\''[^ ]+$'\'''
alias mylocalni='route -n get 163.com|grep interface|grep -Eo '\''[^ ]+$'\'''
alias mylocaldns='scutil --dns|tail -n 10|grep nameserver'

可以拓展一下ii命令,这么去用上面这组aliases:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# ii: display useful host related informaton
# -------------------------------------------------------------------
ii() {
echo -e "\nYou are logged on ${RED}$HOST"
echo -e "\nAdditionnal information:$NC " ; uname -a
echo -e "\n${RED}Users logged on:$NC " ; w -h
echo -e "\n${RED}Current date :$NC " ; date
echo -e "\n${RED}Machine stats :$NC " ; uptime
echo -e "\n${RED}Current network location : $NC " ; scselect
echo -ne "\n${RED}Public facing IP Address : $RED$(myip)"
echo -ne "\n${RED}Local IP Address : ${RED}$(mylocalip) / $(mylocalgw) / $(mylocalni)"
echo -e "\n${RED}DNS Configurations:$NC " ; mylocaldns
echo
}

上面的两端脚本一起放到.bashrc中,并保证.bash_profile中也加载了.bashrc文件,然后重新登录或重新开启一个终端,试试这些命令都将分别生效了:

C++
1
2
3
ii
mylocalni
mylocalip

暂时先这么多吧。

 

 

Posted in: 开源, 技术 / Tagged: bash, Mac

BASH 怎么做单引号嵌套?

2015/12/18 11:24 / anos

这个问题以前遇到过很多很多次,后来都是随便省略了。但是今次突然觉得这个并不那么难,就专门花了时间研究了下,所以结果是这样:

单引号是无法嵌套的,因为bash的line扫描算法遇到下一个单引号就会和上一个直接配对,没有贪婪扫描的说法。

既然如此,实际上一个替代方案立即就会呈现出来:

C++
1
'\''

这个序列首先提供一个闭合单引号,然后是一个命令行转移字符的单引号,最后提供一个开单引号,从而解决了问题。例如:

C++
1
alias history-summary='history | awk '\''{CMD[$2]++;count++;}END { for (a in CMD)print CMD[a] " " CMD[a]/count*100 "% " a;}'\'' | grep -v "./" | column -c3 -s " " -t | sort -nr | nl | head -n10'

查看你在shell中最常使用的命令的频度。

在BASH中,例如十六进制转义符“\x27”来表示单引号也是可以的,这是另一种达到单引号中嵌套单引号的办法。

如果直接使用“\’”转义字符会怎么样呢?我遗憾地告诉你,这种方案是要拼人品的,有可能产生语法错误,也可能顺利通过:

C++
1
echo 'abb\'fine'

最安全的是我们提出的第一种方法。

Posted in: 开源, 技术

upgraded our gitlab server to 8.2.0

2015/12/03 13:16 / anos

use omnipus gitlab-ce upgrade steps.

今后,都是通过 apt-get upgrade 来升级了,当首次升级操作已经完成了apt源注册之后。

当使用DigitalOcean的gitlab-ce droplet时,源已经预置就绪。

通过源码安装或者其他安装方式时,可能需要手工登记正确的apt源,详情可参考官方文档:

  • https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/update.md
  • https://about.gitlab.com/upgrade-to-package-repository/

https://about.gitlab.com/upgrade-to-package-repository/

https://about.gitlab.com/upgrade-to-package-repository/

https://about.gitlab.com/upgrade-to-package-repository/

Posted in: 开源, 技术

拉拉杂杂的变化

2015/10/30 15:19 / anos

10.08 入职,有若干变化,基本面偏向在Java方向,主要关注git推行、新Workflow推行、docker推行、新核心架构重建等方面。

10点钟上班,不过很远,实际上每天有点累,晚上到家几乎20:30。

guanzhuing

 

Posted in: 家庭, 开源

Post Navigation

1 2 3 … 7 Next »

Tags

Android ATL bash Big Data CSS3 Debian Dev Tools dns Freebie front-end git Help Help System HTML5 interior finish iOS iOS7 javascript jQuery KVM linux Mac misc Mobile MSSQL nodejs Office rfc shell syntaxhighlighter syntax highlighting T-SQL Template UI UI Design Visual Studio Web Design Work WTL yaml 流式计算

Categories

Archives

Meta

  • Log in
  • Entries RSS
  • Comments RSS
  • WordPress.org
© Copyright 2019 - Dez anos
Infinity Theme by DesignCoral / WordPress