序:本博客从无到有搭建wordpress,包括从服务器和域名购买,会将步骤一步一步记录下来。如果你也是新手,那你有福了,因为我的系统是centos,对号入座啊。
目录
一、准备域名和服务器
一、安装php
二、安装mysql
三、安装apache
四、wordpress安装
序:搭建自己的博客教程哦~~听上去就蛮激动人心的。
域名:阿里云域名 www.yaochuancun.me
阿里云server ubuntu 14.04 ip地址:120.24.55.63
php 5.2.4 或更新版本
Mysql 5.0或更新版本
Apache mod rewrite模块(可选,用于支持“固定链接”和“站点网络”功能)
关于域名备案的问题,跟域名没有关系,跟服务器主机有关系,国内的主机都需要备案才能开启443 80端口,不备案的话80 443等一些常用端口就用不了。
二、买主机时犯的错
在淘宝买了一个空间(虚拟主机)以为是云主机,后来才发现被坑。
在淘宝上买东西一定要注意,很多淘宝卖家好坑,卖的东西有独立IP的空间和共享IP的空间。还有vps主机,一下见到这么多专业名词都被搞晕了。
像亚马逊、阿里云、天翼云还有个专有名词叫做ECS-弹性云服务。
vps主机(Virtual Private Server 虚拟专用服务器)
想让你的wordpress运行起来,需要先安装四种软件。
php 5.6以上
mysql 5.5以上
apache
wordpress 4.3.1(这是当前最新版)
另外,先解决我的ssh终端中文显示乱码问题
(1)在 ssh , telnet 终端中文显示乱码解决办法( CentOS 5.3 )
#vi /etc/sysconfig/i18n
将原内容 LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"
修 改为
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"
断开连接,重新登录,输入date测试一下。
centos默认下没有安装php组件,因此我们需要输入命令:yum -y install php回车。
不用管,程序会自动完成安装及配置。
(1)安装mysql
Centos 6.6下安装Mysql很简单,
yum list mysql-server
当只有一个时候就可以直接
yum install mysql-server
进行安装
(2) 启动mysql服务
service mysqld start
如果mysql启动完成,输入mysql,可以看到如下,然后输入 q 退出。
(3)删除msyql的方法
yum remove mysql mysql-server mysql-libs compat-mysql51
rm -rf /var/lib/mysql
rm /etc/my.cnf
查看是否还有mysql软件:
rpm -qa|grep mysql
有的话继续删除
(1)首先检查在系统上面是否已经安装了apache软件(apache软件在linux系统里的名字是httpd)
rpm -qa httpd
如果有返回信息,则表示已经安装。如果没有返回信息,则说明没有安装。
(2 )安装
yum install httpd -y
使用相关的命令可以查询出已经安装了httpd 以及软件安装的目录文件位置
chkconfig httpd on
service httpd start 启动软件
---至此安装完成
(3) 重新启动apache报错的解决办法
[root@cloud wordpress]# service httpd restart
停止 httpd: [确定]
正在启动 httpd:httpd: apr_sockaddr_info_get() failed for cloud
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
这个问题应该是没有在 /etc/httpd/conf/httpd.conf 中设定 ServerName 所以它会用主机上的名称来取代,
设置ServerName为你申请的DNS域名。
(4)检查端口是否被占用
netstat –apn 详细展示监听端口及应用程序。
ps -aux | grep process/pid 详细展示进程信息,可以决定是否用kill命令杀死进程。
(1)下载wordpress安装包
wget https://wordpress.org/latest.tar.gz
提示没有认证,所以下载失败。
wget https://wordpress.org/latest.tar.gz --no-check-certificate
利用上面命令,无需认证即可下载成功。
好了下载好先放着。
利用ll命令,应该可以看到latest.tar.gz文件下载成功。
(2)将tar包解压到apache的web目录中
tar -xzf latest.tar.gz -C /var/www/html,解压后多出一个wordpress目录,里面是wordpress网站内容。我的网站就放在wordpress目录中。
(3)创建mysql数据库和用户
保证mysql启动的情况下,输入mysql命令进入mysql(开发mysql服务,使用service mysqld start)
create database test; 建立名为test的数据库
use test; 使用test数据库
CREATE TABLE person (
number INT(11),
name VARCHAR(255),
birthday DATE
); 创建数据库test表person
grant all privileges on test.* to centospub@localhost identified by 'abc123' 建立对test数据库有完全操作权限的名为centospub的用户,密码为abc123。
(4)修改wp-config-sample.php文件内容
vi /var/www/html/wordpress/wp-config-sample.php 打开vi编辑器修改wp-config-sample.php中内容
修改文件中的数据库名称为test,数据库用户名为上面建立的centospub,密码为centospub对应密码abc123。
之后将wp-config-sample.php重命名为wp-config.php
mv wp-config-sample.php wp-config.php #将wp-config-sample.php重命名
(5)设置selinux权限
在终端中通过root执行
setsebool -P httpd_enables_homedirs=1
用于设置selinux权限,表示允许用户通过httpd访问www文件夹,这个权限很重要。
(我执行报错了,先不管这个命令)
(6)在浏览器中输入http://http://www.yaochuancun.me/wordpress/wp-admin/install.php进入Wordpress安装页面,填写对应的用户、网站等信息,随即完成了整个配置过程。
(可惜网络请求超时,应该可以去apache的日志中查看原因。由于已经很晚了,等明天有时间再找原因吧。
更多的原因应该还是在apache上,也许可以通过删除系统自带的apache,然后重新安装的方法来操作一下。)
(7)今天继续搞定昨晚的遗留问题
尝试一:
担心是php的问题,于是从网上找到教程,先调试下php
首先,安装一堆软件和扩展
1. 安装Apahce, PHP, MySQL以及php连接mysql库组件。 #yum -y install httpd php mysql mysql-server php-mysql
2. 安装apache扩展 #yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
3. 安装php的扩展 #yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc
4. 安装MySQL的扩展 #yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
其次,启动Apache和Mysql
#/sbin/service httpd start [启动httpd服务,与开机启动无关]
#/sbin/service mysqld start [启动mysqld服务,与开机启动无关]
再次,编写php程序测试
服务启动后,默认php文件存放的目录在/var/www/html目录下,这里建立一个test.php文件,里面打上些内容,如图:
最后,浏览器中验证test.php能不能被有效解析
结果令人失望,还是请求超时。(是不是防火墙的问题呢。)
尝试二:
是不是防火墙的问题呢?
首先,本地测试到www.yaochuancun.me(此域名已经绑定了45.120.185.71这台香港主机)的防火墙是否开通?
telnet 45.120.185.71 80
结果是不通的
其次,我去网上找到下面这个例子可以开启45.120.185.71的80端口,按照下面步骤进行操作:
(1)service iptables status
(2)编辑/etc/sysconfig/iptables
(3)依葫芦画瓢,我们添加80端口和8080端口(留着以后给tomcat用)
(4)保存/etc/sysconfig/iptables文件,并在终端执行
service iptables restart
(5)从新查看防火墙状态
(6)这时候,服务器的80和8080端口就可以对外提供服务了
利用telnet命令测试就是可以连通的了。
(7)其他端口的开放模式就是类似如此开放模式。
尝试三:
现在尝试访问安装 http://www.yaochuancun.me/wordpress/wp-admin/install.php 结果报错。
从提示信息可以看到要么是数据库用户名密码错误,要么是127.0.0.1系统不识别。于是我先改了数据库和密码,数据库是新建立的数据,密码是默认用户名和密码。用户名root密码空。
修改后重启mysql和apache,依然报错,之后就只能是127.0.0.1系统不识别了。
修改DB_HOST值为localhost之后(见下图),访问就可以了。
这之间我还做了一个动作就是将wordpress的文件全部拷贝到/var/www/html目录下(好处是访问时不用加上下文了)命令为cp
-rf wordpress/*
/var/www/html。
终于见到这界面了,搞了两晚上了,好兴奋。
点击install wordpress,就进入后台了。
默认不设置访问域名就进入前台首页了。
至此,wordpress安装完毕,花了两天的时间搭建自己的个人博客,过程中碰到了很多问题,也走了一些弯路,但过程是快乐的。
有问题随时欢迎交流。请关注我的个人博客www.yaochuancun.me。qq:503937986
五、修改wordpress(WP)配置
WP拥有如下表:
+-----------------------+
| Tables_in_wordpress |
+-----------------------+
| wp_commentmeta |
| wp_comments |
| wp_links |
| wp_options |
| wp_postmeta |
| wp_posts |
| wp_term_relationships |
| wp_term_taxonomy |
| wp_terms |
| wp_usermeta |
| wp_users |
+-----------------------+
1、修改上传附件大小
WP规定默认最大附件大小为2M。
我们需要修改php的配置php.ini,系统中有那么多php.ini,你怎么知道应该修改哪个php.ini文件呢?
(1)找到php.ini的位置
在apache服务器的根目录下建立info.php文件,文件内容为:
<?php
echo
phpinfo();
?>
使用vim编辑该文件
搜索:memory_limit、post_max_size、upload_max_filesize、max_execution_time、max_input_time
一般默认的设置值为:
memory_limit=128M //相当于单个脚本可调用内存大小
post_max_size=8M //上传文件大小上限
upload_max_filesize=2M //默认上传文件大小,这个就是2M的限制!
max_execution_time=30 //最大执行时间,页面等待时间
max_input_time=60 //最大输入时间?具体意义不明确,就是上传时间相关
然后将其改为自己需要的值,例如:
memory_limit=128M
post_max_size=15M
upload_max_filesize=10M //这样就改为可以传10M以下的文件了
max_execution_time=60
max_input_time=60
重新启动apache服务使生效。
2、解决Unable to create directory wp-content/uploads/2015/11. Is its parent directory writable by the server?
没有写的权限,那么我们就给增加写的权限进去。
chmod -R 777 wp-content/