jekyll 安装- Mac

将纯文本转化为静态网站和博客--bootstrap中文网。

jekyll是一个简单的免费的Blog生成工具,类似WordPress。但是和WordPress又有很大的不同,原因是jekyll只是一个生成静态网页的工具,不需要数据库支持。但是可以配合第三方服务,例如Disqus。最关键的是jekyll可以免费部署在Github上,而且可以绑定自己的域名。

gem install jekyll    //安装jekyll,前提是支持ruby gem
jekyll new my-site    //新建站点
cd my-site            //打开站点目录
jekyll serve          //启动jekyll服务

可能遇到的问题和解决办法

    • 可能提示library 目录没有操作权限:管理员运行即可
sudo gem install jekyll

更新gem源,替换为国内镜像源,Ruby China 提供镜像服务

$ gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
$ gem sources -l
https://gems.ruby-china.org
# 确保只有 gems.ruby-china.org

升级gem

sudo gem update --system

 

 

全新安装centos网络配置-防火墙和远程登录设置

1.防火墙配置

默认防火墙是关闭的,查看防火墙状态 service iptables status 。

打开防火墙配置文件

vi /etc/sysconfig/iptables

防火墙有默认配置文件的,其中有22的为默认远程登录的端口,可以仿照它新建开启一个远程登录端口如3333

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3333 -j ACCEPT

防火墙的配置因需求而不同,可以根据自身需求而定制。

另一个常用的防火墙配置就是web服务的端口设置,web服务默认端口为80。

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80    -j ACCEPT

配置完成以后启动防火墙

service iptables start

查看防火墙状态,配置是否生效

service iptables status

查看服务器端口使用情况

netstat -tln

 

2.远程登录配置

Linux服务器一般都是用命令行工具进行ssh远程登录,所以需要配置ssh来限制远程登录的权限。

打开ssh配置文件

vi /etc/ssh/sshd_config

找到#Port 22 ,将其改成你设置的可远程访问的端口,在防火墙中设置开放的端口,本文中为3333

Port 22
Port 3333
#Port 22

如上保留了22端口是因为在没有在测试3333端口登录成功的情况下防止把自己挡在外面,如果3333端口没能连通情况下,断开了当前连接,可能会造成无法再远程登录的情况(这种情况只能到服务器现场开启远程登录)。 如果是云主机的一般会提供一个网页版的内网的管理面板,如果没有只能重装系统,这样会造成数据的丢失的,所以一定要谨慎。再测试登录成功后就可以删掉默认的22端口的配置了。

Port 3333
#Port 22

保存退出、重新载入ssh服务;

service sshd reload

如果要限制可以登录的用户的话,设置可登录用户

AllowUsers 用户名

限制root用户登录

PermitRootLogin yes

 

全新CentOS 6.x 安装lamp环境-操作日记

1.查看系统信息

cat /proc/version

2.查看CentOS版本信息

lsb_release -a

3.更新yum源,替换默认yum为163镜像,原因是国内163镜像会快一些。

还有一个原因是域名安装是出现无法找到资源的情况

“The requested URL returned error: 404 Not Found” Trying other mirror.

具体步骤是:

cd /etc/yum.repos.d               #打开repo目录
mv ./CentOS-Base.repo ./CentOS-Base.repo.bak     #备份原基本源
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo  #下载163的源文件
mv CentOS6-Base-163.repo CentOS-Base.repo  #将163源改为默认源
yum clean all   #清空yum缓存
yum makecache   #生成yum缓存

4.安装apache 服务

1、yum命令安装apache

yum install httpd

根据提示输入 y 或 n, 一般一路 y 同意就OK了。

2、配置apache

打开apache配置文件httpd.conf

vi /etc/httpd/conf/httpd.conf

#ServerName www.example.com:80 改为自己的服务器名、保存退出,如:

#
#ServerName www.example.com:80
ServerName www.orhonit.org

3、启动apache服务

service httpd start

设置开机启动

chkconfig --levels 235 httpd on

访问服务器IP地址,看看是不是已经可以访问了。

5.安装mysql 5.5

1.在centos6.x上安装mysql5.5 ,首先添加yum源。

Webtatic EL6 for CentOS/RHEL 6.x

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm

如果已经安装了早期版本的mysql(查看命令rpm -q mysql mysql-server ),可以用下面的办法升级:

yum install mysql.`uname -i` yum-plugin-replace
yum replace mysql --replace-with mysql55w

如果未安装就直接运行下面的命令进行安装

yum install mysql55w mysql55w-server

You should upgrade existing tables before setting the server to become a production machine, which can be done by starting the server and running the mysql_upgrade script (this may take time depending on the size of the database).

service mysqld start
 
# This will issue a password prompt for the user. If you don't have a root user password, remove the "-p"
mysql_upgrade -u root -p

2、设置开机启动

 chkconfig --levels 235 mysqld on

3、设置root密码

mysqladmin -u root password '********'

4.root登录

mysql -u root -p ( press enter )
Enter password:(root密码)
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.5.47 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> exit; 退出mysql命令行。

6.安装php

1、添加yum源

CentOS/RHEL 6.x:

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm

CentOS/RHEL 7.x:

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

 

2、运行安装命令,安装php5.6

yum install php56w php56w-opcache

3、如果之前安装了低版本的php则需要安装插件来升级php;

yum install yum-plugin-replace
 
yum replace php-common --replace-with=php56w-common

7.安装phpMyadmin

phpmyadmin是可以全手动安装的(即下载压缩包进行配置安装),但是非常繁琐,很容易出错,所以推荐用yum命令进行安装。

首先确定yum源里有phpmyadmin安装包,默认yum源里应该是没有的,epel是应该是应用最广泛的yum源,查看epel源的phpmyadmin信息:

yum --enablerepo=epel info phpmyadmin

安装phpMyAdmin

yum install phpMyAdmin

安装完成以后重启apache,浏览器访问phpMyadmin。

service httpd restart

打开浏览器访问http://服务器IP/phpMyAdmin ,出现如下图所示说明安装成功。

Snip20160413_87

如果出现403 Forbiden,在phpMyAdmin的配置文件中添加访问权限为Allow from All ,如下:

<Directory /usr/share/phpMyAdmin/>
   AddDefaultCharset UTF-8

   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       Require ip 127.0.0.1
       Require ip ::1
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
   Allow from All
</Directory>

 

为了安全起见,一般会将phpMyAdmin地址改成自己要设置的简写如dbadmin等,方法如下:

打开phpMyAdmin配置文件phpMyAdmin.conf

vi /etc/httpd/conf.d/phpMyAdmin.conf

Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin

改成:

#Alias /DBadmin /usr/share/phpMyAdmin #此行无效
Alias /dbadmin /usr/share/phpMyAdmin

这样就可以用dbadmin 访问phpMyAdmin管理面板了。

http://服务器IP/dbadmin

 

8.其他

添加epel源

CentOS 6.x

rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum --enablerepo=epel info phpmyadmin

 

删除无效rmp源:

rpm -e epel-release

 

参考文献:MySQL 5.5 on CentOS/RHEL 6.7 and 5.11 via Yum

redhat 6 上安装phpmyadmin 时一直 报 libt1.so.5()(64bit)  和 libtidy  两个依赖项无法使用,如下

Missing Dependency: libt1.so.5()(64bit) is needed by package php-gd-5.2.17-1.el5.x86_64
Error: Missing Dependency: libt1.so.5()(64bit) is needed by package php-gd-5.2.17-1.el5.x86_64
You could try using --skip-broken to work around the problem
You could try running: package-cleanup --problems
                        package-cleanup --dupes
                        rpm -Va --nofiles --nodigest
The program package-cleanup is found in the yum-utils package.

解决办法是:

到 RPM资源搜索站 http://rpm.pbone.net/ 分别搜索libt1.so.5()  和 libtidy  找到对应的RPM下载链接安装到服务器即可。

根据自己的系统版本找到与自己的系统版本对应的, 如我的我的版本是centos/reheal 6 系列的,如下图:

rpmsearhjietu

找到后点进去获取链接,从下载链接中找到一个可用的链接复制到服务器,进行安装即可。

rmpgetdownlink

安装方法: 我的安装方法是下面这样的,经过测试可用、所以没有继续深入研究。

rpm -Uvh ftp://ftp.pbone.net/mirror/ftp.centos.org/6.8/os/x86_64/Packages/t1lib-5.1.2-6.el6_2.1.x86_64.rpm

rpminstall

 

利用Dnsmasq 在 OS X 上进行本地开发、支持本地域名解析

很多web开发者都非常熟悉修改/etc/hosts文件来将域名如coolsite.com转发到127.0.0.1来实现本地开发站点用域名访问,包括一些集成环境如 MAMP PRO 也是利用了这一特性,但这也有很多不便的地方,如:

  1. 需要管理员权限才能修改hosts文件
  2. 每次新建一个项目都要重新编辑hosts文件
  3. 不支持本地泛域名解析

我们理想的状态是自己定义一个域名如mysite.dev的域名,将其指向到127.0.0.1本地主机,实现用自定义域名访问本地开发地址。建议使用.dev后缀的域名做本地开发,因为在真实的互联网中没有.dev后缀的域名,这样就不会造成真实的域名无法访问的问题了。

DNSmasq

DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。它服务那些只在本地适用的域名,这些域名是不会在全球的DNS服务器中出现的。DHCP服务器和DNS服务器结合,并且允许DHCP分配的地址能在DNS中正常解析,而这些DHCP分配的地址和相关命令可以配置到每台主机中,也可以配置到一台核心设备中(比如路由器),DNSmasq支持静态和动态两种DHCP配置方式。

使用本地dns服务器DNSmasq大致需要如下及步骤:

  1. 在OS X 上安装DNSmasq。
  2. 配置DNSmasq,使所有.dev后缀的域名指向到127.0.0.1上。
  3. 配置Mac OS X的系统设置项,使首选dns地址改为DNSmasq服务的IP(本地为127.0.0.1)。

一、安装DNSmasq

和很多mac软件一样利用Homebrew来安装DNSmasq会非常方便,如果还未安装Homebrew,请先安装它。
请打开终端(应用程序>实用工具),并运行

# 更新&nbsp;homebrew
brew up
# 安装 dnsmasq
brew install dnsmasq

复制默认配置文件到指定目录

# 复制默认配置文件到/usr/local/etc/dnsmasq.conf
cp $(brew list dnsmasq | grep /dnsmasq.conf.example$) /usr/local/etc/dnsmasq.conf
# Copy the daemon configuration file into place.
sudo cp $(brew list dnsmasq | grep /homebrew.mxcl.dnsmasq.plist$) /Library/LaunchDaemons/
# Start Dnsmasq automatically.
sudo launchctl load /Library/LaunchDaemons/homebrew.mxcl.dnsmasq.plist

二、配置DNSmasq

用编辑器打开上一步复制出来的配置文件/usr/local/etc/dnsmasq.conf,将要解析的dns配置写进去。
.dev后缀的域名解析到127.0.0.1

address=/.dev/127.0.0.1

接下来需要重启DNSmasq服务,使当前配置生效。

sudo launchctl stop homebrew.mxcl.dnsmasq
sudo launchctl start homebrew.mxcl.dnsmasq

dig 命令检测当前dns配置是否生效,如任意.dev后缀的域名。

dig testing.testing.one.two.three.dev @127.0.0.1

你会得到如下的结果,说明配置OK,

;; ANSWER SECTION:
testing.testing.one.two.three.dev. 0 IN	A	127.0.0.1

三、配置Mac系统的网络的默认DNS改为DNSmasq服务的地址

现在,你可以通过把Mac系统的DNS改为127.0.0.1来使用dnsmasq。同局域网的用户也可以修改DNS到此台Mac的IP即可。前提是要把此台Mac的局域网IP写到listen-address里。
Snip20160210_4

补充:

配置完成以后需要删除dns缓存操作:

在 OS X v10.10.4 或更高版本中,请使用以下“终端”命令来还原 DNS 缓存设置:

sudo killall -HUP mDNSResponder

在 OS X v10.10 至 v10.10.3 中,请使用以下“终端”命令来还原 DNS 缓存设置:

sudo discoveryutil mdnsflushcache

OS X Mavericks、Mountain Lion 和 Lion

在 OS X v10.9.5 及更低版本中,请使用以下“终端”命令来还原 DNS 缓存设置:

sudo killall -HUP mDNSResponder

Mac OS X Snow Leopard

在 OS X v10.6 至 v10.6.8 中,请使用以下“终端”命令来还原 DNS 缓存设置:

sudo dscacheutil -flushcache

补充2:

我在OSX EI Caption 10.11.4 上安装的时候出现不工作的情况,我的解决的方法是重装了brew和dnsmasq,(因为brew更新操作时出错)。

卸载Homebrew:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

安装Homebrew

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew -v
Homebrew 0.9.9 (git revision 5f06; last commit 2016-05-10)

安装Dnsmasq

brew install dnsmasq

配置dns,复制案例配置文件到指定目录,这里安装完成会有提示,按提示操作就行。

cp /usr/local/opt/dnsmasq/dnsmasq.conf.example /usr/local/etc/dnsmasq.conf

编辑dnsmasq.conf 文件添加要解析的域名vi /usr/local/etc/dnsmasq.conf ,添加address=/.dev/127.0.0.1 到配置文件。

启动dnsmasq服务:

sudo brew services start dnsmasq

删除dns缓存

sudo killall -HUP mDNSResponder