之前在AWS中国上搭建wordpress,参考了一篇很不错的文章:
现在文章失效了,很遗憾啊,还好在网上找到别人转发的,赶紧保存下来,以便以后使用,也为大家提供参考,博客内容如下:
转( 豆博草堂 ):在Amazon EC2搭建WordPress博客
配置一台wordpress服务器:搭建wordpress
接下来,我们搭建wordpress
1.ssh登录到ec2实例,在自己的目录下执行
mkdir blog-related
cd blog-related
进入 http://cn.wordpress.org/, 选择你要安装的wordpress版本的文件链接,比如我要安装 的是 http://cn.wordpress.org/wordpress-3.3.2-zh_CN.tar.gz, 然后执行
wget http://cn.wordpress.org/wordpress-3.3.2-zh_CN.tar.gz
來下载它到服务器上.
解压,
sudo tar zxvf wordpress-3.3.2-zh_CN.tar.gz
将它部署到apache的网页目录,默认是/var/www
mv wordpress /var/www/
2.创建wordpress数据库和用户
假设我们的数据库名字就叫 idocbox, 在命令行执行
mysql -u root -p
提示你输入密码时,输入上面安装过程设置的mysql root密码即可,然后执行,
create database idocbox DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
这样就创建了一个utf8编码的数据库,
接着创建wordpress的mysql用户,
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON idocbox.* TO <your-wordpress-user-name>@localhost IDENTIFIED BY ‘<your-wordpress-mysql-passwords>’;
FLUSH PRIVILEGES;
3.下面,我们來开始安装wordpress吧!
1)在你的浏览器上 输入
http://ec2-xx-xx-xx-xx.compute-1.amazonaws.com/wordpress
这时会进入安装页面,在页面设置一些站点基本信息,管理员用户密码,然后继续,进入数据库设置页面
2).填写上面创建的数据库名称(idocbox), 创建给wordpress的数据库用户名、密码。然后点击
下一步,
这时会报一个权限问题“不能写入wp-config.php文件”。 这个是因为运行apache2的用户和我们当前在命令行部署wordpress的用户不是同一个而引起的权限问题。没关系,安装它说的,我们在命令行创建这个文件,把内容复制进去即可。
sudo vi /var/www/wordpress/wp-config.php
复制那段内容到vi编辑器中,然后
:wq
即可。
做完上面之后,回到浏览器安装页面,点击“继续”即可,这样应该可以安装成功。
别急! 这还没有完全好。我们还要进行一些配置。
3) 配置wordpress的文件目录权限。
记得刚才哪个不能创建wp-config.php问题吧! 它就是权限问题造成的,我们进行下面配置后,在wordpress后台就可以安装插件、主题、上传文件了。
a) 在ec2命令行,
cd /var/www/wordpress
放开所有权限,便于我们识别出apache2运行的用户名。
sudo chmod 777 wp-content
b)进入你的这个博客的后台,写一篇文章,在里面上传一张图片,然后回到命令行。
cd wp-content
ll
这时你会看到一个新目录的信息
drwxr-xr-x 2 www-data www-data 4096 Jul 8 03:24 upgrade
这个目录就是刚才创建的,说明wp执行用的用户是 www-data, 当然,你看到的不一定是这个,看到是什么就是什么。
接下来,我们要恢复wordpress目录权限到正常情况,
cd ..
sudo chmod 755 wp-content
修改wordpress所有者为wordpress 运行所用的用户,www-data
sudo chown -R www-data: wordpress
这时进入wordpress后台,就可以安装插件、主题了。
好了,到此wordpress的安装就结束了。
域名绑定
我们的博客总不能让别人通过 http://ec2-xx-xx-xx-xx.compute-1.amazonaws.com/wordpress 來访问吧!
是的,当然不能这样干! 我们有自己的独立域名的。那接下来,我们就说说怎么把域名和ec2上这个wordpress博客绑定到一起去。
这里假设你拥有一个独立域名,我就以我自己的域名 idocbox.com來进行说明。
1.在ec2的命令行,
a)进入apache的站点设置目录
cd /etc/apache2/sites-available
b)在这个目录你会看到两个文件 default 和 default-ssl, 我们复制default 为idocbox.com,
sudo cp default idocbox.com
对idocbox.com进行编辑修改
sudo vi idocbox.com
将内容修改为以下,黑体部分是要修改的,
<VirtualHost *:80>
#你的电子邮件
ServerAdmin wiseneuron@gmail.com
#wordpress放置目录
DocumentRoot /var/www/wordpress
#映射到这个目录的域名
ServerName idocbox.com
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
#wordpress放置目录
<Directory /var/www/wordpress>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory “/usr/lib/cgi-bin”>
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
#日志
ErrorLog ${APACHE_LOG_DIR}/idocbox.com-error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
#日志
CustomLog ${APACHE_LOG_DIR}/idocbox.com-access.log combined
Alias /doc/ “/usr/share/doc/”
<Directory “/usr/share/doc/”>
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
接下来,我们复制一份上面的文件
cp idocbox.com www.idocbox.com
将www.idocbox.com里面的 ServerName修改为www.idocbox.com
这也做是为了在域名面板里面配置idocbox.com和www.idocbox.com的A记录后可以用idocbox.com和www.idocbox.com都可以访问网站。
然后执行
sudo a2ensite idocbox.com
sudo a2ensite www.idocbox.com
将两个站点启用。
然后重启apache服务器,
sudo /etc/init.d/apache2 restart
好了,服务器配置就完成了。接下来你要做的的是,
申请一个固定ip给你的ec2实例。
1.进入 https://console.aws.amazon.com/ec2/home, 点击左侧的 “Elastic IPs”, 点击右侧栏的上部一个按钮”Allocate New Address”.
这样会分配一个固定ip给你。
2.绑定ip给你的实例。选择你申请的ip,点击上部的 “Associate Address” 按钮,这时会让你选择实例,选择我们这个安装wordpress的实例即可。
这时,我们的ec2实例会进行配置、重启,所以一段时间内这个服务器会连接不上。等一会儿吧!
等待…
大概5分钟后,应该是吧! 继续在实例面板 https://console.aws.amazon.com/ec2/home 的instance里面,选择你的实例,你会发现它的Public DNS是另一个,下次ssh登录要用这个的。还有就是Elastic IP显示了你刚才申请的ip。
好了,下面用用这个ip先访问你的服务器试试, 假设是ip是 xx.xxx.xx.xx, 用http://xx.xxx.xx.xx访问下,看看有没有“
It works!
”
字样,有的话说明ip可用了。
3. ip可用后,登录你的域名控制面板,在A记录里面将idocbox.com和www.idocbox.com指向这个ip 恩,好了试试用域名访问吧!
另外,记得执行
sudo cp -r /usr/share/phpmyadmin /var/www/
将phpmyadmin部署到www目录下,这样就可以通过 http://xx.xxx.xx.xx/phpmyadmin來使用phpmyadmin管理数据库了。
参考资料:
http://docs.amazonwebservices.com/AWSEC2/latest/GettingStartedGuide/Welcome.html?r=1874
http://lanhl.com/2011-amazon-ec2-ubuntu-lamp-wordpress.html
http://www.piaoyi.org/php/Wordpress-To-perform-the-requested-action.htm
配置一台wordpress服务器:搭建wordpress
接下来,我们搭建wordpress
1.ssh登录到ec2实例,在自己的目录下执行
mkdir blog-related
cd blog-related
进入 http://cn.wordpress.org/, 选择你要安装的wordpress版本的文件链接,比如我要安装 的是 http://cn.wordpress.org/wordpress-3.3.2-zh_CN.tar.gz, 然后执行
wget http://cn.wordpress.org/wordpress-3.3.2-zh_CN.tar.gz
來下载它到服务器上.
解压,
sudo tar zxvf wordpress-3.3.2-zh_CN.tar.gz
将它部署到apache的网页目录,默认是/var/www
mv wordpress /var/www/
2.创建wordpress数据库和用户
假设我们的数据库名字就叫 idocbox, 在命令行执行
mysql -u root -p
提示你输入密码时,输入上面安装过程设置的mysql root密码即可,然后执行,
create database idocbox DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
这样就创建了一个utf8编码的数据库,
接着创建wordpress的mysql用户,
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON idocbox.* TO <your-wordpress-user-name>@localhost IDENTIFIED BY ‘<your-wordpress-mysql-passwords>’;
FLUSH PRIVILEGES;
3.下面,我们來开始安装wordpress吧!
1)在你的浏览器上 输入
http://ec2-xx-xx-xx-xx.compute-1.amazonaws.com/wordpress
这时会进入安装页面,在页面设置一些站点基本信息,管理员用户密码,然后继续,进入数据库设置页面
2).填写上面创建的数据库名称(idocbox), 创建给wordpress的数据库用户名、密码。然后点击
下一步,
这时会报一个权限问题“不能写入wp-config.php文件”。 这个是因为运行apache2的用户和我们当前在命令行部署wordpress的用户不是同一个而引起的权限问题。没关系,安装它说的,我们在命令行创建这个文件,把内容复制进去即可。
sudo vi /var/www/wordpress/wp-config.php
复制那段内容到vi编辑器中,然后
:wq
即可。
做完上面之后,回到浏览器安装页面,点击“继续”即可,这样应该可以安装成功。
别急! 这还没有完全好。我们还要进行一些配置。
3) 配置wordpress的文件目录权限。
记得刚才哪个不能创建wp-config.php问题吧! 它就是权限问题造成的,我们进行下面配置后,在wordpress后台就可以安装插件、主题、上传文件了。
a) 在ec2命令行,
cd /var/www/wordpress
放开所有权限,便于我们识别出apache2运行的用户名。
sudo chmod 777 wp-content
b)进入你的这个博客的后台,写一篇文章,在里面上传一张图片,然后回到命令行。
cd wp-content
ll
这时你会看到一个新目录的信息
drwxr-xr-x 2 www-data www-data 4096 Jul 8 03:24 upgrade
这个目录就是刚才创建的,说明wp执行用的用户是 www-data, 当然,你看到的不一定是这个,看到是什么就是什么。
接下来,我们要恢复wordpress目录权限到正常情况,
cd ..
sudo chmod 755 wp-content
修改wordpress所有者为wordpress 运行所用的用户,www-data
sudo chown -R www-data: wordpress
这时进入wordpress后台,就可以安装插件、主题了。
好了,到此wordpress的安装就结束了。
域名绑定
我们的博客总不能让别人通过 http://ec2-xx-xx-xx-xx.compute-1.amazonaws.com/wordpress 來访问吧!
是的,当然不能这样干! 我们有自己的独立域名的。那接下来,我们就说说怎么把域名和ec2上这个wordpress博客绑定到一起去。
这里假设你拥有一个独立域名,我就以我自己的域名 idocbox.com來进行说明。
1.在ec2的命令行,
a)进入apache的站点设置目录
cd /etc/apache2/sites-available
b)在这个目录你会看到两个文件 default 和 default-ssl, 我们复制default 为idocbox.com,
sudo cp default idocbox.com
对idocbox.com进行编辑修改
sudo vi idocbox.com
将内容修改为以下,黑体部分是要修改的,
<VirtualHost *:80>
#你的电子邮件
ServerAdmin wiseneuron@gmail.com
#wordpress放置目录
DocumentRoot /var/www/wordpress
#映射到这个目录的域名
ServerName idocbox.com
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
#wordpress放置目录
<Directory /var/www/wordpress>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory “/usr/lib/cgi-bin”>
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
#日志
ErrorLog ${APACHE_LOG_DIR}/idocbox.com-error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
#日志
CustomLog ${APACHE_LOG_DIR}/idocbox.com-access.log combined
Alias /doc/ “/usr/share/doc/”
<Directory “/usr/share/doc/”>
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
接下来,我们复制一份上面的文件
cp idocbox.com www.idocbox.com
将www.idocbox.com里面的 ServerName修改为www.idocbox.com
这也做是为了在域名面板里面配置idocbox.com和www.idocbox.com的A记录后可以用idocbox.com和www.idocbox.com都可以访问网站。
然后执行
sudo a2ensite idocbox.com
sudo a2ensite www.idocbox.com
将两个站点启用。
然后重启apache服务器,
sudo /etc/init.d/apache2 restart
好了,服务器配置就完成了。接下来你要做的的是,
申请一个固定ip给你的ec2实例。
1.进入 https://console.aws.amazon.com/ec2/home, 点击左侧的 “Elastic IPs”, 点击右侧栏的上部一个按钮”Allocate New Address”.
这样会分配一个固定ip给你。
2.绑定ip给你的实例。选择你申请的ip,点击上部的 “Associate Address” 按钮,这时会让你选择实例,选择我们这个安装wordpress的实例即可。
这时,我们的ec2实例会进行配置、重启,所以一段时间内这个服务器会连接不上。等一会儿吧!
等待…
大概5分钟后,应该是吧! 继续在实例面板 https://console.aws.amazon.com/ec2/home 的instance里面,选择你的实例,你会发现它的Public DNS是另一个,下次ssh登录要用这个的。还有就是Elastic IP显示了你刚才申请的ip。
好了,下面用用这个ip先访问你的服务器试试, 假设是ip是 xx.xxx.xx.xx, 用http://xx.xxx.xx.xx访问下,看看有没有“
It works!
”
字样,有的话说明ip可用了。
3. ip可用后,登录你的域名控制面板,在A记录里面将idocbox.com和www.idocbox.com指向这个ip 恩,好了试试用域名访问吧!
另外,记得执行
sudo cp -r /usr/share/phpmyadmin /var/www/
将phpmyadmin部署到www目录下,这样就可以通过 http://xx.xxx.xx.xx/phpmyadmin來使用phpmyadmin管理数据库了。
参考资料:
http://docs.amazonwebservices.com/AWSEC2/latest/GettingStartedGuide/Welcome.html?r=1874
http://lanhl.com/2011-amazon-ec2-ubuntu-lamp-wordpress.html
http://www.piaoyi.org/php/Wordpress-To-perform-the-requested-action.htm