Linux下apache的安装
centos服务器上
首先我们先登陆阿里云服务器:
我这里是配置过免密登陆的,如果你没有配置,那么就需要输入用户的密码,有关ssh的两种登陆方式可以见我这篇文章:【往期博文】ssh的两种登陆方式:密码登陆与免密登陆,这里就不再赘述了,我们先安装一下openssl:
首先查找一下dnf search openssl
(这里用的是centos8的服务器,8以下的服务器就用yum search httpd
,下文所有的dnf都换成yum就可以了,当然yum在8上也可以用):
然后安装那个第一个:sudo dnf install openssl.x86_64 -y
我这里已经有了,所以不显示过程。
然后我们查找一下apache的包dnf search httpd
:
找到了,安装一下:sudo dnf install httpd.x86_64 -y
然后我们设置一下开机自启,顺便启动一下:sudo systemctl enable --now httpd
至此,apache安装完毕。
然后我们检测一下有没有成功,在浏览器输入服务器的地址试试:
这个是apache的官方网站,如果能够看到这个页面,那就说明apache已经安装好了。
ubuntu服务器上
直接sudo apt-get install apache2 -y
我们查看一下apache的状态:
在浏览器输入服务器的公网地址,如果出现以下界面,则配置成功:
然后是配置apache的虚拟主机:
apache基于ip的虚拟主机的配置
ubuntu系统上apache的配置文件为/etc/apache2/apache2.conf,centos系统上apache的配置文件为/etc/httpd/conf/httpd.conf
centos服务器上
这种配置方法是无法在本地访问的,我们只能在本地访问服务器的公网,并不能访问到服务器的内网。不过从下图可以看到我们已经配置成功了:
为了照顾在本机上配置apache服务的读者,这里讲一下这个方式的配置方法:
先建立好每个ip的目录:
mkdir 想要存放的位置
我这里建立的目录结构如下:
添加三个ip地址,然后在/etc/httpd/conf/httpd.conf中配置如下:
<VirtualHost 172.17.53.206>#这里的ip为我添加的ip
DocumentRoot /home/www/206#这里的目录为我创建的用来存放网页的主页的目录
ServerName www.zephyr.com
<Directory /home/www/206/>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 172.17.53.207>
DocumentRoot /home/www/207
ServerName www.server.com
<Directory /home/www/207/>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 172.17.53.208>
DocumentRoot /home/www/208
ServerName www.client.com
<Directory /home/www/208/>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
最后重启apache服务,再curl就可以看见了,由于这个是服务器内网,所以无法从外面访问到。
ubuntu服务器上
这种配置方法是无法在本机访问的,所以不再赘述。
apache基于域名的虚拟主机的配置
centos服务器上
这种方式的配置我们无需修改ip地址,但是要给ip地址重命名一下:
打开/etc/hosts文件,向其中加入配置:
原:
修改后:
在apache的配置文件中配置如下:
目录结构如下:
重启apache服务,尝试访问一下:(本机也无法访问)
apache基于端口的虚拟主机的配置
centos服务器上
修改apache的配置文件,添加想要部署服务的端口:
加入这些内容:
<VirtualHost 172.17.53.205:81>
DocumentRoot /home/www/zephyr
ServerName www.zephyr.com
<Directory /home/www/zephyr/>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 172.17.53.205:82>
DocumentRoot /home/www/server
ServerName www.server.com
<Directory /home/www/server/>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
<VirtualHost 172.17.53.205:83>
DocumentRoot /home/www/client
ServerName www.client.com
<Directory /home/www/client/>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
重启apache服务:
尝试在服务器访问:
均没有问题,尝试远程访问:
如果半天没有加载出来,可能是因为没有配置服务器上面的端口,关于服务器端口的配置,可以见我这篇文章:【往期博文】如何开放云服务器的端口
安装mariadb
centos服务器上
mariadb是又mysql分离出来的开源数据库。甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。MariaDB是目前最受关注的MySQL数据库衍生版,也被视为开源数据库MySQL的替代品。
由于以上特性,这里直接选择安装mariadb而不是mysql。
在安装之前我们必须卸载所有和mariadb有关的包,先看一下有没有装:rpm -qa|grep mariadb
如果有这个包,则卸载,卸载用的是dnf remove mariadb -y
然后我们就可以开始安装了
首先我们查找一下mariadb的包:dnf search mariadb
如果找不到,那么我们新建一个文件:vim /etc/yum.repo.d/mariadb.repo
文件内容如下:
[mariadb]
name = MariaDB
baseurl = https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-10.5.9/yum/centos8-amd64/ #这个需要你自己按照需求去找,一般进https://mirrors.tuna.tsinghua.edu.cn/mariadb/,然后自己选择mariadb版本,linux版本等就可以了
gpgcheck = 0
enable = 1
上
然后我们dnf makecache
一下:
再dnf search mariadb
试一下。
找到之后,我们执行sudo dnf install mariadb-server.x86_64 -y
:
然后我们开启开机自启并开始运行mariadb:sudo systemctl enable mariadb --now
然后我们输入mysql试着运行一下:
如出现上图所示的内容,则安装成功。
ubuntu服务器上
直接sudo apt-get install mariadb-server -y
检查一下mariadb的运行状态:
以root用户的身份启动mysql
安装配置PHP
centos服务器
安装PHP之前我们先要启用epel源:
wget https://mirrors.tuna.tsinghua.edu.cn/epel/epel-release-latest-8.noarch.rpm
rpm -Uvh epel-release-latest-8.noarch.rpm#这个是升级的命令,如果要安装就要用rpm -ivh epel-release-latest-8.noarch.rpm
安装完后同样我们先dnf search php
一下:
然后安装PHPsudo dnf install php -y
然后我们打开apache的配置文件:vim /etc/httpd/conf/httpd.conf
修改以下内容:
这个#ServerName www.example.com:80
下一行加上
ServerName localhost:80
下面的Require all denied改成Require all granted
这个 DirectoryIndex index.html改为 DirectoryIndex index.php index.html
后两行都是加上的:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
最后我们访问这个地址:服务器ip地址/index.php
如果显示如下页面,则搭建成功:
ubuntu服务器上
直接sudo apt-get install php -y
安装php
sudo apt install php-mysql
sudo apt install libapache2-mod-php
修改apache的配置文件:vim /etc/apache2/apache.conf
向最后一行加入如下配置:
<IfModule dir_module>
DirectoryIndex index.php index.html index.htm
</IfModule>
在/var/www/html/index.php文件中写入以下内容:
?php phpinfo(); ?>
访问我们的ip地址:端口,如果看到一下页面,则表示配置成功: