在华为云服务器上(Ubuntu18.04)搭建LAMP环境以及同时部署wordpress,Discuz,phpbb等
前段时间做课设要求在linux的服务器上用LAMP环境搭建自己的论坛或者博客。
首先是我用的环境:
Ubuntu18.04+Apache2+PHP7.1+MySQL5.7
其中服务器是前段时间白嫖的华为云服务器,域名也是白嫖的域名。
用的ssh连接工具是finalshell,因为这个东西比较方便windows和linux服务器传输文件和更改。
Apache2的安装与测试:
首先安装Apache2:
sudo apt-get install apache2
然后打开浏览器输入自己的服务器公网ip,显示如下图就是成功了:
完成上面步骤后最好更新一下资源:
sudo apt-get update
sudo apt-get upgrade -y
PHP7.1的安装与测试:
然后安装PHP环境以及其他的相关组件,省的后面又哪里缺组件之类的:
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.1-fpm php7.1-mcrypt php7.1-cli php7.1-xml php7.1-mysql php7.1-gd php7.1-imagick php7.1-recode php7.1-tidy php7.1-xmlrpc
sudo apt-get install libapache2-mod-php7.1
结束之后在终端输入
php -v
就可以查看版本了,如下图:
MySQL5.7的安装与测试:
在终端输入
sudo apt-get --purge remove mysql-server mysql-common mysql-client
sudo apt-get install mysql-server mysql-common mysql-client
sudo /etc/init.d/mysql restart
安装完成后,由于新创建的是root用户而我们没有密码,所以我们需要先删除这个root用户再创建一个新的root用户并且给他赋所有的权限。(注意在mysql终端输入都是以 ;结尾)。
首先,登录mysql:
sudo mysql -u root
然后删除root账号:
mysql> DROP USER 'root'@'localhost';
Query OK, 0 rows affected (0,00 sec)
重新创建root:
mysql> CREATE USER 'root'@'%' IDENTIFIED BY '密码';
授权:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0,00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0,01 sec)
mysql> exit
建立Apache与MySQL的连接:
输入
sudo apt-get install phpmyadmin -y
然后选择Apache2
设置密码并确认密码
最后建立连接重启MySQL和Apache
sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin
sudo service mysql restart
sudo /etc/init.d/apache2 restart
这样,LAMP环境就已经搭建好了。
接下来我们来绑定域名(如果没域名可以跳过)
首先进入自己域名的运营商,找到自己的域名,然后选择域名中的DNS解析,选择记录类型为A,ip地址为自己服务器的公网ip,点击确定就可以了。
wordpress的安装:
由于现在wordpress的主页访问不了,所以这时候就体现出了finalshell的便利性了,我们先在windows下下载一个最新版的wordpress安装包。
wordpress-5.3.2-zh_CN.zip下载链接:
链接:https://pan.baidu.com/s/1380HrzglO5XDx39aX83O4g
提取码:4ti5
直接上传到服务器,然后解压到/var/www/html/文件夹下面,(html文件夹是Apache的默认读取的文件夹目录)
接下来就为wordpress创建一个数据库(管理员和密码可以自己改):
//登录进入数据库
mysql -u root -p
//创建数据库
CREATE DATABASE wordpress;
//创建管理员
CREATE USER wordpressusers;
//设置密码
SET PASSWORD FOR wordpressusers = PASSWORD("密码");
//设置权限
GRANT ALL PRIVILEGES ON wordpress.* TO wordpressusers IDENTIFIED BY "密码";
//生效配置
FLUSH PRIVILEGES;
//退出数据库
exit
由于现在wordpress已经存在html文件夹下,就不用再移动了,可以直接给整个html文件夹赋予权限(不赋权的话就后面在网页上会报错缺少权限):
sudo chmod -R 777 /var/www/html/
sudo /etc/init.d/apache2 restart
这样就可以通过域名(没有域名就通过公网ip)直接的访问了,界面如下:
Apache2部署多个站点:
上面说过,Apache2的默认文件夹是html,但是我们一般使用的时候,很多个站点都是部署在同一部服务器上面,接下来就可以通过两种方法来访问不同站点。
1. 如果你有多个域名的话,那么就可以修改配置文件通过不同域名来访问不同的文件夹,就是用来访问不同的站点。
2. 如果你只有一个域名的话,那么就通过修改Apache2配置文件来监听不同的端口号来访问不同的站点。
由于我只有一个域名,所以先介绍第二种方法。
虽然在实验中发现,帮别人搭建的时候,由于他没有域名,所以不能通过不同的端口号来区分这些,可能是因为粗心或者其他原因我也没去探讨。
首先我们配置Apache2端口,让Apache2监听其他端口
修改/etc/apache2/ports.conf,可以在其默认的端口(Listen 80)下面增加自己要监听的端口。
然后配置Apache2配置文件
在/etc/Apache2/sites-available中建立自己的配置文件,可以先复制000-default.conf
然后再重命名。
sudo cp 000-default.conf wushuyng1_best.conf,
sudo cp 000-default.conf wushuyng2_best.conf,
sudo cp 000-default.conf wushuyng3_best.conf
再打开来编辑这些配置文件,其中需要关注的是ServerName和DocumentRoot这两个配置点:
首先需要你在/var/www/下面新创建一个文件夹,其与html文件夹在同一目录下就行。
然后更改VirtualHost *的端口号为自己听的,把ServerName的前面注释符号 ‘#’去掉,后面改成自己的域名
ServerName wushuyng.best
在下面修改
DocumentRoot /var/www/wushuyng1_best
再在其下面加一段如下:
<Directory "/var/www/wushuyng1_best">
AllowOverride All
</Directory>
最后一步我们需要在sites-enabled目录下来建立符号链接来使其生效:
sudo ln -s /etc/apache2/sites-available/wushuyng1_best.conf /etc/apache2/sites-enabled/wushuyng1_best.conf
sudo ln -s /etc/apache2/sites-available/wushuyng2_best.conf /etc/apache2/sites-enabled/wushuyng2_best.conf
sudo ln -s /etc/apache2/sites-available/wushuyng3_best.conf /etc/apache2/sites-enabled/wushuyng3_best.conf
重启Apache2使配置生效:
sudo /etc/init.d/apache2 restart
这样就能通过域名+:端口号来访问
如果是要采用第一种情况的话,就不用了监听新的端口,只需要在配置文件的ServerName 后面输入域名就可以,端口号不用改变,其他都一样。
参考博客:https://blog.csdn.net/jochen_M/article/details/84073588
Discuz的安装:
由于前面配置了8081端口监听的目录为wushuyng1_best,其中是打算存放Discuz论坛,所以直接在/var/www/wushuyng1_best目录下下载并解压Discuz文件,其中会有三个目录,需要把upload目录下的所有文件移到wushuyng1_best中。
然后就是配置Discuz的数据库
先mysql -u root -p登录进数据库,然后创建一个名为discuz的数据库,并创建一个管理员为wushuyng的账号。
create database discuz;
grant all privileges on discuz.* to '用户名'@'localhost' identified by '密码';
flush privileges;
exit
然后赋权
chmod -R 777 /var/www/wushuyng1_best/*
当配置完成后注意,如果用google可能会因为自己站点的安全性不好,发送表单请求的时候可能会把你拦截从而登录不了,换个浏览器就好了。
其他的PHPBB3和织梦管理系统也是如此安装就好了。