Edeity's Blog

阿里云搭建wordpress记

备案已两月,在阿里云上各种折腾,总结不过两件事:

  • 搭建wordpress
  • 搭建ruby on rails

特此记录相关配置步骤

预备工作

折腾Round 1:搭建wordpress

WordPress

分三步:

  1. 安装lamp
  2. 安装辅助服务(如phpMyAdmin,FTP等)
  3. 安装wordpress

安装lamp

  1. 安装Apache

    sudo yum install httpd # 下载安装apache
    sudo service httpd start # 启动服务

    在游览器中输入公网ip,查看apache是否启动成功

  2. 安装mysql

    sudo yum install mysql-server
    sudo service mysqld start
  3. 安装PHP以及PHP组件

    sudo yum install php php-mysql 
    yum install php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc
  4. 开机启动Apache和Mysql 

    sudo chkconfig httpd on 
    sudo chkconfig mysqld on

安装ftp

  1. 安装ftp 

    yum -y install vsftpd
  2. 关闭防火墙并允许21号端口通行

    service iptables stop 
    iptables -A INPUT -p tcp –dport 21 -j ACCEPT 
    iptables -A INPUT -p tcp –dport 20 -j ACCEPT
  3. 保存更改

    /etc/rc.d/init.d/iptables save 
    service iptables restart # 重启防火墙
  4. 配置vsftpd 

    vim /etc/vsftpd/vsftpd.conf 

    vsftpd.conf 设置如下:

    anonymous_enable=NO # 禁止匿名用户anonymous登录 
    chroot_local_user=YES # 限制在home目录下,无法向上改变目录。 
  5. 启动ftp 

    service vsftpd start
  6. 可通过xftp图形界面进行操作

    配置和xshell同,输入公网ip,账号密码即可

安装phpMyAdmin

phpMyAdmin已被heidisql(一个简单易用的图形工具)取代

默认安装的mysql不允许远程访问,需配置mysql -u root -p

> GRANT ALL ON . TO "root"@"121.250.220.39" IDENTIFIED BY "1234";
> flush privileges
> exit

配置防火墙:

service iptables stop # 防火墙放行3306
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
./etc/rc.d/init.d/iptables save
service iptables restart # 重启防火墙
service mysqld restart # 重启mysql

安装wordpress

可到官网中下载最新版本的wordpress,在15/5/31,最新版本是4.22

wget https://cn.wordpress.org/wordpress-4.2.2-zh_CN.zip
unzip wordpress-4.2.2-zh_CN.zip
cd wordpress
vim wp-config-sample.php

wp-config-sample.php配置如下:

define(‘DB_NAME', ‘wordpress') ; /** MySQL数据库名 */
define(‘DB_USER', ‘root'); /** MySQL数据库用户名 */
define(‘DB_PASSWORD', ‘password') /** MySQL数据库密码 */
define(‘DB_HOST', ‘localhost'); /** MySQL主机(不用修改) */

迁移目录

mv wordpress /var/ww/html/blog # 移动到apache推荐目录

配置mysqlmysql -u root -p

> create database wordpress; 
> SET PASSWORD FOR 'root'@'localhost'=PASSWORD('newpassword');
> quit;

补充

上一步中,若把wordpress移动到/var/www/html文件夹,直接访问ip即可配置wordpress,但因个人需要,我把wordpress搬运至/var/www/html/blog中了,因此还需要配置一下apache

sudo service httpd restart # 重启apache服务器

httpd.conf配置如下:

NameVirtualHost *:80
<VirtualHost *:80>
ServerName blog.edeity.net
DocumentRoot /var/www/html/blog
ErrorLog /var/www/html/blog/wordpress_log
</VirtualHost>

重启vim /etc/httpd/conf/httpd.conf,随后可通过blog.edeity.net来访问wordpress配置

apache或edeity无法更改wordpress配置文件:简单粗暴de的解决方法

sudo chown -R apache.apache html
sudo chmod -R 775 html
sudo usermod -G apache edeity

折腾Round 2

ROR

安装ruby(非RVM)

wget  http://ruby.taobao.org/mirrors/ruby/ruby-2.2.2.zip
unzip ruby-2.2.2.zip
cd ruby-2.2.2
./config
sudo make
sudo make install
ruby -v
gem -v

测试

rails new blog
cd blog
bundle install

更换成淘宝的源(若gem安装过慢)

gem source -r https://rubygems.org/
gem source -a http://ruby.taobao.org
gem install bundler
gem install rails
rails -v

问题汇总

Q: bundle install无缘被终止,如:

Using rails 4.2.1
Using rdoc 4.2.0
Using sass 3.4.14
...
Killed # 执行到一般,被中断了

A:原因:交换区不够:解决方法