之前的Win主机上挂了十几个WordPress网站,客户普遍反映后台操作已经慢到不行。于是我租了一台新的云主机,这次下决心要搞定Linux主机了,同样的配置,Linux跑WordPress肯定要快不少,而且也不会碰到Win主机下的各种怪问题。花了两天时间折腾,终于搞定建站环境,把第一个WordPress网站给搬了过去,也踩了不少的坑,这里记录一下过程,以做备忘。
Linux小白的我先用了CentOS6.4安装建站环境,不过第一次安装就碰到了无法解决的问题,索性换成CentOS6.5重装,最后总算折腾出来了。以下记录的是CentOS6.5下安装建站环境的步骤:
1. 在云主机系统的后台先设个root密码;
2. 下载putty登录工具,登录云主机。此时先输入root账号,接下来会提示输入密码,这个密码要一次性输入完毕,屏幕上不会显示任何*号提示。一旦输错就按回车重新输。
3. 安装screen:
yum install screen
创建会话:
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,输入以下命令就回到安装“界面”了:
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的修改都要重启服务器才会生效
有漏掉的地方,欢迎补充。我也会随时更新此文。
本站所有文章均为原创,欢迎转载,请注明文章出处:https://blog.brain1981.com/1156.html。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。
您也可以扫描左边的二维码,关注我们的微信公众号,在微信上查看我们的案例。
好人~~~
登录工具我觉得xshell比putty好用