10分钟在服务器上搭建WordPress

148 阅读4分钟

服务器上搭建WordPress

WordPress是网络上最流行的开源博客系统和CMS,它是基于PHP和MySQL的。并且WordPress的功能非常强大,可以用各种免费的插件和主题来扩展。

本文将介绍如何在服务器上搭建WordPress,以Ubuntu Server 20.04 LTS举例。(这里跳过购买服务器、域名、备案等步骤)

安装PHP和Apache相关包

$ sudo apt update
$ sudo apt install apache2 \
                 ghostscript \
                 libapache2-mod-php \
                 mysql-server \
                 php \
                 php-bcmath \
                 php-curl \
                 php-imagick \
                 php-intl \
                 php-json \
                 php-mbstring \
                 php-mysql \
                 php-xml \
                 php-zip

安装wordpress

创建文件夹/srv/www/srv一般用于存放该系统提供的相关网站数据,例如网络服务器的数据以及脚本。其中-p表示如果没有/srv目录的话,就先创建\srv目录,然后再创建www

$ sudo mkdir -p /srv/www

更改文件所有者以及组(chown - change owner),一般用法为chown [OPTION]... [OWNER][:[GROUP]] FILE...,如果只给了一个所有者(可以用用户名或者用户ID),那么该用户称为文件的所有者,而文件的组不会改变。如果所有者后面冒号加上组名,注意中间没有空格,那么文件的组也会改变。如果有冒号,但是没有组名,那么文件的组更改为该用户登陆时的组。

$ sudo chown www-data: /srv/www

从WordPress官网下载安装包并解压。

$ curl https://wordpress.org/latest.tar.gz | sudo -u www-data tar zx -C /srv/www

配置Apache

打开/etc/apache2/sites-available/wordpress.conf配置文件,并将下面代码粘贴至配置文件中。

#打开配置文件
$ sudo vim /etc/apache2/sites-available/wordpress.conf
<VirtualHost *:80>
    DocumentRoot /srv/www/wordpress
    <Directory /srv/www/wordpress>
        Options FollowSymLinks
        AllowOverride Limit Options FileInfo
        DirectoryIndex index.php
        Require all granted
    </Directory>
    <Directory /srv/www/wordpress/wp-content>
        Options FollowSymLinks
        Require all granted
    </Directory>
</VirtualHost>

使网页能够正常工作。

$ sudo a2ensite wordpress

重写URL。

$ sudo a2enmod rewrite

取消 “It Works” 页面弹出。

$ sudo a2dissite 000-default

最后,重新加载apache2使上述更改能够正常运行。

$ sudo service apache2 reload

配置数据库

首先要创建MySQL数据库。

$ sudo mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.7.20-0ubuntu0.16.04.1 (Ubuntu)

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> CREATE DATABASE wordpress;
Query OK, 1 row affected (0,00 sec)

mysql> CREATE USER wordpress@localhost IDENTIFIED BY '<your-password>';
Query OK, 1 row affected (0,00 sec)

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER
    -> ON wordpress.*
    -> TO wordpress@localhost;
Query OK, 1 row affected (0,00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 1 row affected (0,00 sec)

mysql> quit
Bye

启动MySQL让其正常工作。

$ sudo service mysql start

注意:<your-password>处在使用自己的密码时记得加单引号'',每句命令记得加上;结束。除了密码部分,其他部分不建议更改。

$ CREATE USER wordpress@localhost IDENTIFIED BY '<your-password>';

将wordpress连接到服务器上

将WordPress提供的配置模版复制到wp-config.php文件中

$ sudo -u www-data cp /srv/www/wordpress/wp-config-sample.php /srv/www/wordpress/wp-config.php

然后,设置在配置文件里添加数据库资格。

$ sudo -u www-data sed -i 's/database_name_here/wordpress/' /srv/www/wordpress/wp-config.php
$ sudo -u www-data sed -i 's/username_here/wordpress/' /srv/www/wordpress/wp-config.php
$ sudo -u www-data sed -i 's/password_here/<your-password>/' /srv/www/wordpress/wp-config.php

**注意:**不要替换database_name_hereusername_here 部分。但是需要<your-password> 替换成上面自己设置的密码,注意这里不需要加单引号''

用nano打开配置文件,进行更改。

$ sudo -u www-data nano /srv/www/wordpress/wp-config.php
  • 找到下面这段代码的位置
define( 'AUTH_KEY',         'put your unique phrase here' );
define( 'SECURE_AUTH_KEY',  'put your unique phrase here' );
define( 'LOGGED_IN_KEY',    'put your unique phrase here' );
define( 'NONCE_KEY',        'put your unique phrase here' );
define( 'AUTH_SALT',        'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT',   'put your unique phrase here' );
define( 'NONCE_SALT',       'put your unique phrase here' );
  • 删除这些行,ctrl+k可以删除一行,然后用下面的代码替换,ctrl + u可以粘贴。
define('AUTH_KEY',         '5=2SboNBpg!B pou6_t;Jb5i8#Eeg3+g-i2s}#]QvhB2qjHF;~N7!Y<_:tV+!dbo');
define('SECURE_AUTH_KEY',  '_O6G{,|sG_)Gm2R]K]y7P~{_>.(B%J;KePQ|0: QQ2mTLSieaBJ qQ]N^s1uH$VE');
define('LOGGED_IN_KEY',    'K5.apRH=o!/xDP+&7x_->KL/C|+G_8i~:/)}gold>4Uyl</nUXBA^b:uJ5v9`C%_');
define('NONCE_KEY',        'IXqE/F.8@XWzF6MN^@0W+;k5bo5k_]jciEEU__N:xn-+r;Qp_6,s5ga+d#)R$u~#');
define('AUTH_SALT',        'Bg-1QPsU+F>ZQ|O+r_3@h$*P-hhu%YimL{=5 ^8 @x>|`rN)>$gce{]flZ7XMm|K');
define('SECURE_AUTH_SALT', '<M(]Ibs3[ *bJq)CPW-zlcU`,DK<]+)/T)!wx]j>)q66#JdQ;8J,;Qmsn~c!+]3w');
define('LOGGED_IN_SALT',   'kp8M0 AJY6Ym3L{-.A#E%>G{o*H2W-xm*Wf|]Nv-9%^{BkG[AA;jxYYPN=%g[}To');
define('NONCE_SALT',       'DH5X`Ix2a SX&:GC(&2-/Y&V:QdnN-n QXIzCG*hg).m]b tktT{d701hrX7cPZU');
  • 保存并关闭ctrl+ b然后按y 最后enter

打开你的网页

现在你在服务器端所有的配置已经完成,接下来你就可以通过浏览器登录到你服务器上部署的WordPress网页了。

打开浏览器,输入你的服务器的地址,如果你已经添加了域名解析,把域名指向服务器的IP地址,那么也可以直接输入你的域名来进入。

首先你会看到WordPress的语言界面,选择语言,下面以选择英语为例,后面进行可以更改。

语言选择

接下来你需要对你的网站进行一些设置,包括网站的主题以及管理者相关设置等。最最重要的就是管理者名字和密码,千万不要忘记了,不然以后你就无法登入你的网站控制台,就没法对网站进行修改了。

网页设置

输入好相关设置信息之后,点击Install WordPress,等系统安装完成后,你就会重新跳转到一个登陆页面,这个登陆画面是专门对网站管理者的登陆界面,登入后你才能对网站进行修改。

登陆页面

输入正确的用户名和密码后,你就进入到了你网站的控制台,你可以在这里为你的主页设置主题,添加主页和应用插件。刚才说过WordPress是支持中文的,你可以在settingsSite language一栏将语言改成简体中文。

控制台

语言设置

点击左上角的小房子,旁边的名字就是你之前设置的你的网站主题,接下来就会进到WordPress默认为你设置的主题页面。至此,WordPress算是正式在你的服务器上部署好了,接下来你就可以通过设置主题,安装插件,发布内容,让你的网站看起来更美观,更丰富了。

网站主页

如果你想在任何地点对你的网站进行修改都是可以的,刚才说过,一旦当你在服务器上部署好WordPress之后,你就可以通过服务器的IP地址或者域名进入到你的网站,然后你在网站的URL后面加上/wp-admin,就可以进入到管理者登陆面板,然后你就可以在任何地方任何时候对你的网站进行修改了。