完整的阿里云服务器配置过程 - 搭建 WordPress 站点

导语

前面讲了怎么配置阿里云服务器,今天讲讲怎么
在阿里云服务器快速搭建wordpress网站。

下载wordpress

wordpress最新下载地址:https://wordpress.org/latest.zip,用unzip解压下载下来的压缩包,把文件夹重命名
为网站名称,

unzip latest.zip
mv latest idoras.com

这样就得到一个以网站域名命名的项目。

配置nginx

要想从浏览器上访问你的网站,你需要配置nginx网站服务,然后启动nginx服务。

nginx的默认配置文件路径在:/etc/nginx/nginx.conf,配置示例如下

user test;
worker_processes 4;
pid /var/run/nginx.pid;

events {
  worker_connections 65535;
  multi_accept on;
  use epoll;
}

http {
  sendfile on;
  client_max_body_size 8m;

  tcp_nopush off;
  tcp_nodelay on;

  limit_conn_zone $binary_remote_addr zone=one:100m;
  keepalive_timeout 15;
  types_hash_max_size 2048;

  include /etc/nginx/mime.types;
  default_type application/octet-stream;

  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

  #include /etc/nginx/passenger.conf;

  access_log /var/log/nginx/access.log;
  error_log /var/log/nginx/error.log;

  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/javascript text/xml application/xml application/xml+rss text/javascript;

  include /etc/nginx/conf.d/*.conf;
}

第一行user test;指定nginx启动的用户,可以不配置
最后一行include /etc/nginx/conf.d/*.conf;启用nginx虚拟域名配置,每一个配置文件可以配置一个单独的域名,
实现一台服务器监听多个网站域名。

多米诺站长网的虚拟主机配置文件:/etc/nginx/conf.d/idoras.com.conf,内容如下

server {
  listen 80;
  server_name idoras.com;
  rewrite ^/(.*)$ https://idoras.com/$1 permanent;
}

server {
  listen 80;
  server_name www.idoras.com;
  rewrite ^/(.*)$ https://idoras.com/$1 permanent;
}

server {
  listen 443 ssl;
  server_name www.idoras.com;
  ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
  ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;
  rewrite ^/(.*)$ https://idoras.com/$1 permanent;
}

server {
  listen 443 ssl;
  server_name idoras.com;

  location /nginx_status {
    allow 127.0.0.1;
    deny all;
    stub_status on;
  }

  root /home/test/sites/idoras.com;

  access_log /var/log/nginx/idoras.com/access.log;
  error_log /var/log/nginx/idoras.com/error.log;

  ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
  ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;

  limit_conn  one  300;

  if (-f $document_root/system/maintenance.html) {
    rewrite ^(.*)$ /system/maintenance.html break;
  }

  location ~ (/assets|/system|/avatar.png|/favicon.ico|/*.txt) {
    access_log        off;
    expires           14d;
    gzip_static on;
    add_header  Cache-Control public;
  }

  location / {
    if ($host != 'idoras.com') {
      rewrite ^/(.*)$ https://idoras.com/$1 permanent;
    }
    try_files $uri $uri/ /index.php?$args;
    index index.php;
    include hhvm.conf;
    proxy_redirect     off;
    proxy_set_header   Host $http_host;
    proxy_set_header   X-Forward-For $remote_addr;
    proxy_set_header   Host $host;
    proxy_set_header   X-Forwarded-Host $host;
    proxy_set_header   X-Forwarded-Server $host;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    proxy_buffering    on;
    proxy_http_version 1.1;
    proxy_set_header   Upgrade $http_upgrade;
    proxy_set_header   Connection "Upgrade";
    proxy_set_header   X-Forwarded-Proto https;
    gzip on;
  }
}

由于是在测试阶段,使用的是nginx自验证ssl证书,nginx本地证书
letsencrypt安装免费证书,根据需要自行选择,
正式上线肯定是要用letsencrypt安装证书的。

配置完成之后就可以运行sudo nginx启动nginx服务了,目前还是不能访问网站,因为没有配置hhvm。

hhvm配置

参照配置阿里云服务器教程之后,hhvm默认已经启动了,
但是还需要进行配置修改才能成功运行网站。

hhvm的启动命令在:/etc/init.d/hhvm,使用vi打开这个文件,找到RUN_AS_USER=这一行,把后面的用户改成你自己的
管理用户,不然启动hhvm之后会提示403,因为运行hhvm的用户没有权限访问当前的网站目录。

mysql配置

mysql安装之后有一个root用户,如果你没有修改过密码的话,默认密码为空,安装wordpress的时候需要用到用户名和密码
配置,和linux服务器一样,不推荐直接使用root用户,最好创建一个新的用户, 赋予这个用户适当的管理权限。

在shell终端输入:mysql -uroot -p登录mysql服务器,

CREATE USER 'test'@'localhost' IDENTIFIED BY 'pass';
GRANT ALL PRIVILEGES ON *.* TO 'test'@'localhost';

这样在安装wordpress的时候就可使用用户名test和密码pass创建新的数据库了。

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 1

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!