简单说明
本教程针对于在Linux系统的服务器上安装部署服务器环境,如果你恰好有一台服务器(无论是实体服务器还是购买的云服务器),并且使用的是Linux系统,那么你就可以参考本文来安装Apache(Web服务器)、PHP7.2、数据库(MySQL/MariaDB),并且进行一些有必要的配置,比如对PHP的加速、安装phpMyAdmin以及获取SSL证书使用https协议等。从而,这几种应用程序的经典组合Linux、Apache、MySQL、PHP即统称为LAMP
链接服务器
如果你在服务器本机上操作,直接打开服务器命令行终端即可。
如果你是购买的云服务器或者使用其他电脑远程连接控制该服务器,那么你首先要做的就是链接到你得服务器。
Windows系统
Windows系统不能直接链接Linux系统,需要使用一些辅助工具,这里推荐使用Putty。
image image下载完成后直接安装,然后打开,可以进入登录页面,填写你的服务器IP地址,端口号选择22,连接方式选择SSH,然后链接即可,这里本人使用的云服务器的IP地址为39.106.23.80,全篇都采用次地址。
image进入之后输入用户名,一般是初始值root,然后输入登录密码,密码在输入过程中不会显示任何东西,这是Linux对密码的保护机制,不必惊讶,保证不输错就行。
一切顺利的话会进入Linux系统,当显示 ~#
时则表示可以输入命令了。
Linux系统
Linux系统下可以直接链接Linux服务器,在命令行终端下,输入命令 ssh root@39.106.23.80
然后输入服务器的密码即可连接成功,同样出现 ~#
的符号
安装MySQL或MariaDB数据库
目前有两种广泛使用的MySQL数据库系统可供选择,这是由Oracle开发的经典“MySQL”服务器,现在可以在5.7版本中获得,而MySQL分支名为MariaDB,由原始MySQL开发人员Monty Widenius开发。这两种数据库只需要也只能安装一种,也就是说如下的两个小节“安装MySQL 5.7”和“安装MariaDB 10”只需要参考其一完成即可。
安装MySQL 5.7
使用命令
apt-get -y install mysql-server mysql-client
整个过程中你可能会被要求填写密码、设置一些东西,按照步骤要求填写即可,第一步是设置数据库密码,然后剩下的可以一路选择 y 表示 yes就行,直到最后会出现 Success. All done! 表示安装成功。
安装MariaDB 10
使用命令
apt-get -y install mariadb-server mariadb-client
然后为MariaDB设置密码
mysql_secure_installation
整个过程大概这样:
image最后出现 Thanks for using MairaDB
即表示成功。
测试MySQL/MariaDB root登录
使用命令
mysql -u root -p
输入刚刚设置的密码,看是否登录到数据库中。
如果是MySQL数据库,会变成使用 mysql>
开头的符号等待命名输入,如果是MairaDB数据库则会使用 MariaDB>
开头的符号等待命令输入,使用命令 quit
即可退出数据库,下图是MariaDB的图示。
安装Apache
使用命令
apt-get -y install apache2
安装完毕后在浏览器中输入你的IP地址访问服务器,如果看到如下页面则表示Apache安装成功。
imageUbuntu默认服务器的文档根目录是 /var/www/html
,主配置文件是 /etc/apache2/apache2.conf
配置系统的说明完整记录在 /usr/share/doc/apache2/README.Debian.gz
中
安装PHP 7.2
部署PHP语言环境
使用命令
apt-get -y install php7.2 libapache2-mod-php7.2
然后重新启动Apache
systemctl restart apache2
测试PHP并获取PHP安装信息
在默认网站文档的根目录也就是 /var/www/html
下创建一个小小的php文件,并使用浏览器访问该文件来检测服务器和PHP语言环境是否正常运行。
使用vim编辑器新建并编辑一个php文件:
vim /var/www/html/info.php
就会进入vim编辑器,如果你不会使用vim编辑器,请按照如下步骤进行:
在输入上一条命令后在编辑器中按 I
键进入编辑模式,输入如下代码
<?php
phpinfo();
然后按 Esc
键退出编辑模式,然后英文状态下输入 :
,会发现左下角出现了一个冒号,输入的光标指向了此处,此时输入 wq
然后按回车,即可返回命令行,同时文件创建编辑完毕。
回到命令行后,使用命令
chown www-data:www-data /var/www/html/info.php
将 info.php
文件的所有者更改为www-data用户和组
然后在我们的浏览器中使用IP访问我们的服务器并在后面加入 /info.php 来访问刚刚写的php文件,如果出现如下内容即表示PHP和Apache正确运行。
image链接PHP与MySQL/MariaDB数据库
使用命令
apt-cache search php7.2
和
apt-cache search php-
注意:因为并非所有PHP软件包的名称中都有版本号7.2,可以选择你需要的,并像这样安装它们:
apt-get -y install php7.2-mysql php7.2-curl php7.2-gd php7.2-intl php-pear php-imagick php7.2-imap php-memcache php7.2-pspell php7.2-recode php7.2-sqlite3 php7.2-tidy php7.2-xmlrpc php7.2-xsl php7.2-mbstring php-gettext
重启Apache
systemctl restart apache2
刷新刚刚的 info.php
页面然后在下方看到数据库的信息后表示成功!
安装Opcache + APCu PHP缓存来加速PHP
PHP 7附带了一个内置的操作码缓存器,用于缓存和优化PHP中间代码,名称为“opcache”,可在包php7.0-opcache中找到。 强烈建议安装Opcache以加快PHP页面的速度。 除了opcache之外,我还将安装APCu,它是opcache的兼容性包装,提供APC缓存的功能,这是PHP 5.x版本中经常使用的缓存系统,许多CMS系统仍然使用它。
使用命令:
apt-get install php7.2-opcache php-apcu
如果提示已经安装是正常的事情,然后重启Apache
systemctl restart apache2
再次刷新 info.php
页面,如果找到下方的相关模块则表示安装成功
完成了刚才的测试后,可以及时删除杠杆创建的 info.php 文件,这个文件中包含了许多关键的信息,不希望被他人看到。
rm -f /var/www/html/info.php
设置https协议
在Apache中启用SSL网站
SSL/TLS是一个安全层,用于加密网络浏览器和服务器之间的连接。也就是目前支持的https协议。我们可以在服务器上使用如下命令启用SSL支持:
a2enmod ssl
a2ensite default-ssl
它启用SSL模块并在 /etc/apache2/sites-enabled
文件夹中添加一个符号链接到文件 /etc/apache2/sites-available/default-ssl.conf
,用于将其包含到活动的apache配置中。 然后重启Apache:
systemctl restart apache2
此时在浏览器中使用https协议访问你得IP地址,如我的是:https://39.106.23.80/ ,会出现如下的提示:
image此时可以选择忽略警告继续浏览,可以进入我们原本的网站
image image为了避免出现类似的不安全警告,我们需要获取SSL证书
从Let's Encrypt获取免费的SSL证书
首先安装python3-certbot-apache包:
apt-get -y install python3-certbot-apache
使用编辑器打开vhost文件
vim /etc/apache2/sites-available/000-default.conf
并在“DocumentRoot”下面添加一行:记得将如下的域名替换成自己的域名
ServerName www.littlegeniux.xin
image
保存后回到命令行,使用命令:
certbot --apache -d www.littlegeniux.xin
然后需要输入一个邮箱地址
image然后会经历一些步骤:
image表示SSL证书配置成功:
image此时通过 https://www.littlegenius.xin 或者 https://39.106.23.80 访问网站就不再有安全警告出现了。
image设置加密自动更新
由于SSL证书只在80天中有效,所以我们运行命令
certbot --renew
来设置其自动更新
安装phpMyAdmin
phpMyAdmin是一个图形化管理数据库的工具,简单说是一个Web页面,你可以在其中可视化地管理你得数据库。
配置phpMyAdmin
使用命令:
apt-get -y install phpmyadmin
整个过程中会经历很多的设置,注意:这种设置是使用键盘的方向键进行选择,当移动到你想选中的位置后一定要按空格键才能将其选中,只移动方向键使它高亮并不是选中,一定要按空格键将其选中!选中后会有一个*号的标识。
image image之后会有一系列的内容要选择
image image image image image对phpMyAdmin创建root权限
在命令行中使用命令登录到数据库
mysql -u root
使用如下代码创建一个名为“admin”密码为“123456”的新用户,根据自己的需求更改下方的账户和密码成为你的,注意命令尾部的分号。
CREATE USER 'admin'@'localhost' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit
配置上述内容后就可以在浏览器中使用 http://39.106.23.80/phpmyadmin/ 访问phpMyAdmin啦:
image输入账号密码即可在phpMyAdmin中管理你得数据库!
image本地与服务器之间的文件传输
服务器的搭建和配置任务全部完成了,最后你可能还需要知道如何实现本机与服务器之间的文件传输。
Linux系统
如果你本机使Linux系统,很简单,使用命令行终端就可以完成:
将本地文件 /home/test.txt
传输到服务器的 /var/www/html
目录下:
scp /home/test.txt root@39.106.23.80:/var/www/html
将服务器的 /var/www/html/test.txt
文件传输到本地的 /home
目录下:
scp root@39.106.23.80:/var/www/html/test.txt /home
将本地文件 /home
整个目录传输到服务器的 /var/www/html
目录下:
scp /home root@39.106.23.80:/var/www/html
将服务器的 /var/www/html
整个目录传输到本地的 /home
目录下:
scp root@39.106.23.80:/var/www/html /home
Windows系统
如果你是用Windows系统,那么你可以使用WinScp工具来完成这个过程.
下载地址:https://winscp.net/eng/index.php
下载好后安装,然后和putty的界面和操作类似,输入IP地址,端口号设置为22,然后输入用户名与密码
image如果经常使用可以选择保存将这个IP保存,下次就不需要再输入一次了
image连接建立后就会出现如下的界面,很简单,左边是你的Windows目录,右边就是你的服务器目录,需要进行文件传递只需要将文件或者文件夹从左侧拖动到右侧或者从右侧拖动回左侧即可。
image转载请注明出处,本文永久更新链接:https://blogs.littlegenius.xin/2019/03/07/Ubuntu18.04 服务器部署与安装 Apache,PHP 7.2和MySQL/
网友评论