原创作品,转载时请务必以超链接形式标明文章原始出处:http://dapalm.com/ubuntu-14-04-vps部署nginx-php-mariadb-phpmyadmin-wordpress个人博客.html,作者:大数据,怕了么?
1.个人博客建站软件及版本选择:
首先网站所使用的VPS服务器是日本软银旗下的IDCF,在使用的这段时间来说,还是相当稳定的,除了晚上8-9点钟会偶尔抽风,一切正常,价格也能接受,一个月540日元(含税)。搭建网站后台主要使用Ubuntu14.04 + Nginx1.46 + PHP 5.5.9 + MariaDB 10.0.28 + wordpress 4.7 + PHPMyAdmin 4.0.10,也不知道这些软件版本的新旧,本着初学能用,先把个人博客环境搭出来,慢慢再改进优化的原则,向各位介绍介绍自己的搭建过程。
1.1 Ubuntu 14.04.5 LTS
1.2 Nginx 1.4.6
1.3 PHP 5.5.9
1.4 MariaDB-10.0.28
1.5 PHPMyAdmin 4.0.10
上面是本站点所用的服务器端软件,前期搭建时,除了不少问题,都是因为Nginx版本和MysqL的问题,后来把Nginx版本从1.10.x降到了1.4.x,抛弃了MysqL直接使用它的替代品MariaDB,很迅速的网站就跑起来了。因为是网站新手,之前也没有太多相关经验,往大伙海涵,本人现在程序员一枚,刚刚研究生毕业,准备从事图像深度学习领域的工作,以后博文主要还是集中在分享深度学习和嵌入式硬件相关技术上。个人建站只是个业余爱好,业余归业余,作为一名励志成为优秀软件工作者的“大掌”来说,还是要认真对待的。下面讲讲具体的操作步骤,供各位参考:
2.网站后台搭建步骤:
2.1 安装软件
apt-get install Nginx postfix PHP5-fpm mariadb-server memcached apt-get install PHP-pear PHP5-MysqL PHP5-curl PHP5-gd PHP5-mcrypt PHP5-memcache apt-get install python make screen git wget zip unzip iftop vim curl htop iptraf nethogs
- Nginx: Web 服务器
- postfix: SMTP 服务器,用来支持从本地发送邮件
- PHP5-fpm: PHP 进程管理器,及 PHP 解释器
- mariadb-server: 类 MysqL 数据库
- memcached: 基于内存的缓存,很多程序会用到
- PHP-pear: PHP 的包管理器
- PHP5-MysqL: PHP MysqL 数据库驱动
- PHP5-curl: 一个 HTTP 协议库
- PHP5-gd: 一个图像处理库
- PHP5-mcrypt: 一个加密算法库
- PHP5-memcache: Memcached 驱动
- python: 一个常用的脚本语言解释器
- make: 一个常用的构建工具
- screen: 一个常用的 Shell 会话管理工具
- git: 一个常用的版本控制工具
- wget,curl: 常用的文件下载工具
- zip,unzip: ZIP 压缩和解压工具
- iftop,iptraf,nethogs: 常用的流量监控工具
- vim: 一个常用的编辑器
- htop: 一个常用的进程监控工具
软件安装很简单,是参考王子亭的博客:https://jysperm.me/2014/09/1830/。
2.2 wordpress安装设置
adduser myblogweb su myblogweb cd ~
wget http://cn.wordpress.org/wordpress-4.7-zh_CN.zip
解压文件:
unzip wordpress-*.zip
设置文件权限:
chmod -R 750 wordpress
删除安装包:
rm wordpress-*.zip
回到 root:
exit
2.3 配置PHP5-fpm
为 wordpress 创建一个进程池:
vi /etc/PHP5/fpm/pool.d/wordpress.conf
这是一份很典型的配置文件,通过监听 Unix Socket 来提供服务,动态调节进程数,最高 10 个进程,最低 3 个进程:
[wordpress] user = myblogweb group = myblogweb listen = /home/myblogweb/PHPfpm.sock listen.owner = myblogweb listen.group = myblogweb listen.mode = 0660 pm = dynamic pm.max_children = 10 pm.min_spare_servers = 3 pm.max_spare_servers = 5 slowlog = /home/myblogweb/PHPfpm.slowlog request_slowlog_timeout = 5s request_terminate_timeout = 15s PHP_admin_value[error_log] = /home/myblogweb/PHPfpm_error.log PHP_admin_flag[log_errors] = On
2.4 配置Nginx1.4.6
rm /etc/Nginx/sites-enabled/default
新建一个站点,并链接到/etc/Nginx/sites-enabled/default
:
vi /etc/Nginx/sites-available/wordpress.conf ln -s /etc/Nginx/sites-available/wordpress.conf /etc/Nginx/sites-enabled/default
这份配置文件已将请求重写到 index.PHP,可以直接在 wordpress 中使用「固定链接」功能:
server { listen 80; server_name 你的域名,例如dapalm.com; root /home/myblogweb/wordpress; index index.html index.PHP; autoindex off; location / { try_files $uri $uri/ /index.PHP; } location ~ \.PHP$ { fastcgi_pass unix:///home/myblogweb/PHPfpm.sock; include fastcgi_params; fastcgi_index index.PHP; } }
将fastcgi_param SCRIPT_FILENAME
开头的行改为:
vi /etc/Nginx/fastcgi_params fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
usermod -G myblogweb -a www-data
2.5 配置 MariaDB
进入 MariaDB控制台:
MysqL -p # 需要输入你的 MysqL root 密码 # 创建数据库,数据库名例如wordpressDB CREATE DATABASE `数据库名`; # 为 wordpress 新建用户,用户名和密码均为根据自己情况填 CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码'; # 授予权限 GRANT ALL PRIVILEGES ON `数据库名` . * TO '用户名'@'localhost'; # 退出 exit
2.6 安装PHPMyAdmin(即MysqL图形管理界面)
sudo apt-get install PHPmyadmin sudo ln -s /usr/share/PHPmyadmin/ /home/myblogweb/wordpress/pma
这样,就可在浏览器上输入:你的域名/pma。即可访问数据库,输入管理员账户和密码登录。
至此,网站后台就搭建起来了,相对于初学者已经够用了,后期可以在进行优化。浏览器输入:你的域名/wp-admin对你的网站进行wordpress后台管理编辑。wordpress简单易用,对于初学者来说,关注主题和插件即可搭建出漂亮的网站来。