怎么注册博客网站?新手建站教程( 二 )


安装Node
安装Node环境,执行以下命令:
wget http://nodejs.org/dist/v8.12.0/node-v8.12.0-linux-x64.tar.xzxz -d node-v8.12.0-linux-x64.tar.xztar -xf node-v8.12.0-linux-x64.tar ln -s ~/node-v8.12.0-linux-x64/bin/node /usr/bin/nodeln -s ~/node-v8.12.0-linux-x64/bin/npm /usr/bin/npmnode -v npm
安装ruby
依赖于Ruby环境,需要安装Ruby,执行以下命令即可:
wget http://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.4.tar.gz mkdir -p /usr/local/ruby tar -zxvf ruby-2.4.4.tar.gzcd ruby-2.4.4 ./configure --prefix=/usr/local/ruby make && make install cd ~ vim .bash_profilesource .bash_profile
安装gcc
安装gcc执行以下命令:
yum -y update gccyum -y install gcc+ gcc-c++
安装
最后安装,执行以下命令
gem install jekylljekyll --versiongem update --system
可以通过 --查看版本来验证是否安装成功,如果安装成功,则会显示正确的版本号 。
安装过程中可能存在的问题
使用创建一个博客模板,并启服务,执行以下的命令:
jekyll new myblogcd myblog/jekyll serve
当执行 serve命令,我服务器环境报来以下的错误:
`block in verify_gemfile_dependencies_are_found!': Could not find gem 'minima (~> 2.0)' in any of the gem sources listed in your Gemfile. (Bundler::GemNotFound) from /usr/local/ruby/lib/ruby/site_ruby/2.4.0/bundler/resolver.rb:257:in `each'
查了相关的资料,需要安装和插件,安装命令如下:
gem install bundlergem install minima
部署我的博客
部署博客需要在服务器中编译博客,然后编译后的博客放在Nginx服务的静态路径上
编译博客
需要git工具,下载在上面的代码,执行以下命令:
git clone http://github.com/forezp/forezp.github.iocd forezp.github.iojekyll serve
serve命令会编译我从上下载的源码,在这一步,第一次执行会报以下的错误:
Deprecation: The 'gems' configuration option has been renamed to 'plugins'. Please update your config file accordingly. Dependency Error: Yikes! It looks like you don't have jekyll-paginate or one of its dependencies installed.
是因为博客需要用到和插件,安装下即可 。
gem install jekyll-sitemapgem install jekyll-paginate
重新执行 serve,运行成功,此时可以通过curl命令查看服务器里部署的博客 。
部署到Nginx服务器上:
通过编译后的静态文件需要挂载到Nginx服务器,需要安装Nginx服务器 。安装过程参考了#
按照文档,新建文件/etc/yum.repos.d/nginx.repo,在文件中编辑以下内容并保存:
[nginx]name=nginx repobaseurl=http://nginx.org/packages/centos/7/$basearch/gpgcheck=0enabled=1
然后执行安装nginx命令,如下:
yum install nginx
Nginx配置成功后,需要设置Nginx的配置,配置文件路径为/etc/nginx/conf.d/.conf,配置的内容如下:
server { listen 80; server_name localhost; location / { root /usr/share/nginx/html; index index.html index.htm; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
安装Nginx服务器成功后,将编译的博客静态html文件输出到Nginx服务器上,执行以下的命令:
jekyll build --destination=/root/blog/html
启动Nginx服务器,就可以正常的博客网页了,如果需要在浏览器上访问,需要在阿里云ECS控制台的安全组件暴露80端口 。如果想通过域名访问,需要将域名解析设置指向你的服务器 。
非www域名的重定向到www
比如我想访问重定向到上,需要在Nginx的配置文件/etc/nginx/conf.d/.conf,修改配置以下内容:
listen 80; server_name fangzhipeng.com www.fangzhipeng.com; if ( $host != 'www.fangzhipeng.com' ) { rewrite "^/(.*)$" http://www.fangzhipeng.com/$1 permanent; }