CentOS6.5服务器配置建站环境详细流程php
以前的Win主机上挂了十几个WordPress网站,客户广泛反映后台操做已经慢到不行。因而我租了一台新的云主机,此次下决心要搞定Linux 主机了,一样的配置,Linux跑WordPress确定要快很多,并且也不会碰到Win主机下的各类怪问题。花了两天时间折腾,终于搞定建站环境,把第 一个WordPress网站给搬了过去,也踩了很多的坑,这里记录一下过程,以作备忘。html
Linux小白的我先用了CentOS6.4安装建站环境,不过第一次安装就碰到了没法解决的问题,索性换成CentOS6.5重装,最后总算折腾出来了。如下记录的是CentOS6.5下安装建站环境的步骤:mysql
1. 在云主机系统的后台先设个root密码;linux
2. 下载putty登陆工具,登陆云主机。此时先输入root帐号,接下来会提示输入密码,这个密码要一次性输入完毕,屏幕上不会显示任何*号提示。一旦输错就按回车从新输。nginx
3. 安装screen:sql
yum install screen
建立会话:centos
screen -S lnmp
4. 安装LNMP1.1(当前最新版本是1.2了,会有一些区别,能够参考这里):浏览器
wget -c http://soft.vpser.net/lnmp/lnmp1.1-full.tar.gz && tar zxf lnmp1.1-full.tar.gz && cd lnmp1.1-full && ./centos.sh
这一行命令是下载、解压、安装在一块儿了,这个过程很漫长,期间快则半小时,慢则要一个小时。
会提示设置MySQL的root密码、选择MySQL和PHP的版本和PHP的版本,以及其余一些设置
MySQL我选了5.5.x, PHP选了5.3.x
其余基本都选是服务器
因为耗时比较长,掉线也很正常,一旦掉线,再登陆putty,输入如下命令就回到安装“界面”了:ssh
screen -r lnmp
5. 安装FTP工具vsftpd
yum install vsftpd
官方说安装完毕后应该直接能用FTP工具,经过root帐号登陆到服务器了,但我怎么试都不行,踩了第一个坑。原来是要把22端口开放才行。
查看端口命令:
cd /usr/local/nginx/conf
查看防火墙iptables:
/etc/init.d/iptables status
用vi命令编辑防火墙文件:
vi /etc/sysconfig/iptables
若是没有22端口就增长一个,顺便把8080和80也加上
编辑好退出,要保存设置:
/etc/rc.d/init.d/iptables save
而后重启防火墙:
service iptables restart
到这里,就能够用FTP工具,用root帐号登陆服务器了。后面要改什么文件直接在FTP里下载了改,vi还没习惯,偷懒了
6. 为服务器添加域名,设置网站的目录
添加域名命令:
/root/vhost.sh
先添加一个主域名,而后会提示有没有更多域名要添加,若是有,就按提示用空格分开多个域名输入;
而后会提示网站文件存放的目录,就安默认和域名一致就行;
提示是否须要日志,通常都选否,不太重要的项目我选是;
以上这些设置之后均可以修改。
登陆FTP,找到/usr/local/nginx/conf/vhost/ 目录下就是主机域名绑定配置文件,能够直接修改设置
创建的站点文件都在/home/wwwroot/
默认站点在/home/wwwroot/default/
7. 因为国内主机都是屏蔽了80端口的(真恶心),因此要开放一个8080端口才能使用主机上的phpMyAdmin工具。
FTP登陆主机,进入/usr/local/nginx/conf/;
修改nginx.conf中的listen的值,添加一条8080端口的设定;
而后重启nginx:
/etc/init.d/nginx restart
这样就能用浏览器,经过IP加8080端口访问phpMyAdmin了,登陆密码就是第4步安装LNMP的时候设定的MySQL密码。
8. 至此咱们就能够安装WordPress了,但安装完毕后我发现此时的WordPress不少功能不能用,好比搜索不到新上传上去的主题和插件、图片上传功会报错…
先解决图片上传报错的问题,经过FTP工具把update目录权限设置成757;
而后在FTP里找到php.ini文件,把disable_functions后的scandir函数去掉,重启主机,这样主题和插件就能扫描到了。
9. 最后一个坑,在Win主机下,MySQL的表名通常是不分大小写的;而在Linux主机下大小写是敏感的,由此致使一小部分写得不严谨的SQL语句不能执行。
编辑/etc/my.cnf文件,在[mysqld]这节下 添加 lower_case_table_names 参数,设值为1(大小写不敏感,默认为0),
这样“容错性”就大大提升了。
10. 补充:
LNMP1.1的php.ini里关闭了几乎全部的报错信息,这样我会常常发现迁移过来的网站会莫名其妙的不正常,又没法得知缘由。
因而本身要编辑php.ini,把几个牵涉到error的值都改为On:display_errors 、html_errors 和 log_errors 。这样在新主机上开发网站就能看到报错信息了
注:全部php.ini的修改都要重启服务器才会生效
有漏掉的地方,欢迎补充。我也会随时更新此文。