在emp配置上,如何安装WordPress
Huangzhongbang
・12 分钟阅读
介绍
在本教程中,你会学习如何在新创建的实例上安装WordPress ,我会在Ubuntu 14.04服务器上演示安装,这些指令也可以在旧版本的Ubuntu和Debian上使用。
让我们开始。
步骤1:更新现有软件包
apt-get update && apt-get upgrade
步骤2:安装Nginx
Nginx是一个高性能轻量级web服务器,用于提供大量静态内容,以高效使用系统资源,与Apache相反,nginx使用异步事件驱动模型,在负载下提供更可预测的性能。
让我们添加第三方存储库来安装最新版本的Nginx (1.6.1 )。
sudo apt-get install python-software-properties
add-apt-repository -y ppa:rtcamp/nginx
sudo apt-get update
sudo apt-get install nginx
service nginx start
现在,让我们测试服务器是否启动,并且运行。
http://YOUR-VPS-IP
它应该带你到Nginx登陆页面的默认位置。
第三步:Install PHP 5.5
PHP是广泛使用的开源通用脚本语言,特别适合于web开发,并且可以嵌入到HTML中。
让我们在服务器上安装最新版本的PHP 。
sudo add-apt-repository ppa:ondrej/php5
sudo apt-get update
sudo apt-get install php5-common php5-mysqlnd php5-xmlrpc php5-curl php5-gd php5-cli php5-fpm php-pear php5-dev php5-imap php5-mcrypt
如果要检查你的PHP版本,请运行以下命令:
php -v
你会看到类似这样的东西。
PHP 5.5.16-1+deb.sury.org~trusty+1 (cli) (built: Aug 25 2014 10:24:59)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
withZendOPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
现在,我们会做一个轻微的配置更改,使我们的设置更加安全,以root权限打开主php5-fpm配置文件:
sudo nano /etc/php5/fpm/php.ini
按ctrl +w,并且搜索cgi,fix pathinfo =
,取消注释(删除;),并且在更改后将1更改为0.该行应如下所示:
cgi.fix_pathinfo=0
保存(Ctrl+O ),并且关闭文件(Ctrl+X )。
现在,我们只需要通过键入以下命令重新启动我们的PHP处理器:
sudo service php5-fpm restart
步骤4:安装MySQL
要存储和管理数据库,我们需要安装MySQL ,你可以通过在控制台中键入以下命令轻松安装它:
sudo apt-get install mysql-server
在安装过程中,你会被要求为MySQL设置一个root密码,一旦你设置了root密码,我们将要告诉MySQL生成目录结构,其中存储数据库。
sudo mysql_install_db
让我们通过运行一个安全脚本来完成它该脚本会修改一些默认的不安全性。
sudo mysql_secure_installation
如果你不想更改它,就输入root密码,并且键入n
,然后,在每个问题中键入y
。
设置时区(条件)
默认情况下,服务器的时区为UTC ,如果你居住在不同的时区,可以通过在以下命令中键入来更改它:
sudo dpkg-reconfigure tzdata
此时,你的emp服务器已启动,并且正在运行。
第五步:配置Nginx为服务
让我们通过创建一个Nginx服务器块来开始我们的Wordpress安装。
sudo nano /etc/nginx/sites-available/wordpress
粘贴下面的代码:
server {
listen 80;
root /var/www/wordpress;
index index.php index.html index.htm;
server_name domain.com;
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location / {
# try_files $uri $uri/ =404;
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location = /favicon.ico {
access_log off;
log_not_found off;
expires max;
}
location = /robots.txt {
access_log off;
log_not_found off;
}
# Cache Static Files For As Long As Possible
location ~*
.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|css|rss|atom|js|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$
{
access_log off;
log_not_found off;
expires max;
}
# Security Settings For Better Privacy Deny Hidden Files
location ~ /. {
deny all;
access_log off;
log_not_found off;
}
# Return 403 Forbidden For readme.(txt|html) or license.(txt|html)
if ($request_uri ~*"^.+(readme|license).(txt|html)$") {
return 403;
}
# Disallow PHP In Upload Folder
location /wp-content/uploads/ {
location ~ .php$ {
deny all;
}
}
}
这是一个调整良好的Wordpress配置文件,支持永久链接。保存(Ctrl+O ),并且关闭文件(Ctrl+X )。 让我们通过符号链接启用服务器块
sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/wordpress
接下来,我们会删除Nginx默认服务器块。
sudo rm /etc/nginx/sites-enabled/default
现在,我们将调整主Nginx配置文件:
sudo nano /etc/nginx/nginx.conf
确保工作进程的数量等于实例中的内核数。
user www-data;
worker_processes 1;
pid /run/nginx.pid;
在事件块中添加use epoll 。
events {
worker_connections 4096;
multi_accept on;
use epoll;
}
添加client_max_body_sized 和server_tokens off directive。 将保持连接"超时设置为30秒
##
# Basic Settings
##
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 30;
types_hash_max_size 2048;
server_tokens off;
client_max_body_size 100m;
# server_names_hash_bucket_size 64;
# server_name_in_redirect off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
确保整个Gzip设置块如下所示:
##
# Gzip Settings
##
gzip on;
gzip_disable"msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
保存(Ctrl+O ),并且关闭文件(Ctrl+X ),然后重新启动服务器:
sudo service nginx restart
步骤六:配置PHP
如果要会文件上载到WordPress站点上的2mb个以上,则必须增加php.ini上的上载大小变量。
sudo nano /etc/php5/fpm/php.ini
现在按ctrl +w并搜索" upload_max_filesize 并会它设置为100M。
upload_max_filesize=100M
对后最大尺寸"执行相同的操作,Post_max_size需要与Upload_max_fileSize相同或更大。
post_max_size=100M
重新启动PHP 。
sudo service php5-fpm restart
步骤七:设置MySQL数据库
在这个步骤中,我们会创建数据库用户和表,继续并登录到MySQL shell :
mysql -u root -p
使用你的MySQL root密码登录,我们会需要创建一个WordPress数据库,以及数据库中的一个用户,首先,让数据库(随便给你什么名字吧):
CREATE DATABASE wordpress;
Query OK, 1 row affected (0.00 sec)
然后,我们需要创建一个新用户,请会数据库,名称和密码替换为你喜欢的任何内容:
CREATE USER wordpressuser@localhost;
Query OK, 0 rows affected (0.00 sec)
为你的新用户设置密码:
SET PASSWORD FOR wordpressuser@localhost= PASSWORD("password");
Query OK, 0 rows affected (0.00 sec)
通过向新用户授予所有权限来完成,如果没有此命令,WordPress安装程序会无法启动:
GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)
然后刷新MySQL :
FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
退出MySQL shell :
exit
步骤8:安装WordPress文件
我们已经完成了,让我们继续安装WordPress 。
首先导航到站点root目录:
mkdir /var/www/
cd /var/www/
现在,下载WordPress的最新版本:
wget http://wordpress.org/latest.tar.gz
从归档文件中提取:
tar -xzvf latest.tar.gz
会/var/www/wordpress
的权限授予www-data
用户,它将允许将来自动更新WordPress插件和使用SFTP进行文件编辑。
sudo chown -R www-data:www-data wordpress/
sudo usermod -a -G www-data www-data
你已经准备好了你的新WordPress网站了。只要导航到你的网站并完成安装。