1.sudo su
2.apt update
3.apt install apache2
4.安装完成,验证版本:apache2 -version
5.配置UFW防火墙:
为了配置Apache,我们首先需要允许外部访问我们系统的某些Web端口,并在UFW防火墙上允许Apache。
第1步:列出UFW应用程序配置文件:ufw app list
在上面的输出中,可以看到三个Apache配置文件都提供不同级别的安全性;Apache是一一个提供最大限制但端口80仍处于打开状态的Apache。(http)Apache Secure 端口43 https 安全带
第2步:在UFW上允许Apache并验证其状态
在UFW_上允许Apache将为网络流量打开端口80,同时为服务器提供最大的安全性。
通过以下命令配置UFW以允许Apache访问:ufw alow 'Apache'
步骤1:验证Apache服务是否正在运行:systemctl status apache2
如果看见下面绿色的active(running)说明apache是启动成功的
第2步:验证Apache是否正常运行并侦听IP地址还可以通过从Apache服务器请求页面来验证Apache是否正在运行。首先可以使用服务器的IP来访问Apache登录页面。
使用以下命令了解服务器的IP: hostname -I
用该ip地址在浏览器中访问,验证Apache服务器是否正常工作
现在我们已经可以用ip访问了,下面我们来配置虚拟主机,然后可以用域名访问,若想在一个服务器上配置多个网站,可以重复一下操作多次。
虚拟主机类似于Nginx中的服务器块。它用于管理来自一个服务器的多个域的配置。我们将提供一个如何通过 Apache服务器设置虚拟主机的示例。
我们将使用Apache for Ubuntu 18中默认启用的服务器块来建立一个名为linuxidc.com的网站。
1.设置域名
默认情况下启用的服务器块能够提供来自/var/www/html的文档。但是,我们将在/var/www/创建一个目录,保留默认目录。
通过以下命令创建此目录,将linuxidc.com替 换为各自的域名。
sudo mkdir -p /var/www/linuxidc.com/html
然后通过以下命令分配目录的所有权:
sudo chown -R $USER:$USER /var/www/linuxidc.com/htmI
sudo chmod -R 755 /var/www/linuxidc.com
2.现在让我们创建一个索引页面
如果Apache运行我们的域名,我们以后可以访问它们进行测试。通过Nano编辑器 或任何其他文本编辑器创建HTML文件。
nano /var/www/linuxidc com/html/index.html
Ctrl+x离开 根据提示输入Y保存内容
3.创建配置文件:
Apache需要一个虚拟主机文件来提供服务器的内容。已经创建了用于此目的的默认配置文件,但我们将为自定义配置创建一个新配置文件。
sudo nano /etc/apache2/sites-available/linuxidc.com.conf
ServerAdmin [email protected]
ServerName linuxidc.com //域名
ServerAlias www.linuxidc.com //别名
DocumentRoot /var/www/linuxidc.com/html//解析上面域名的对应地址
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
< /VirtualHost>
4.启用域配置文件
让我们启用使用刚刚创建的配置文件: sudo a2ensite linuxidc.com.conf
Ps:上面这条命令实际上是把配置文件从available目录拷贝到enabled目录下(原因如下)
5.输出将建议激活新配置,但我们可以在运行以下禁用原始配置文件的命令后集体执行此操作:
sudo a2dissite 000-default.conf
(默认配置文件中会默认启动上面输入ip自动出现的那个网址)
6.现在重启Apache服务: sudo systemctl restart apache2
7.测试错误
最后,让我们通过以下命令测试是否存在任何配置错误:
sudo apache2ctl configtest
如果没有收到任何错误,将获得以下输出:
Syntax OK
常见错误:(ServerName没有映射)
解决:将映射写入配置文件,也可以直接打开文件编辑
echo "ServerName linuxidc.com"|sudo tee /etc/apache2/conf-available/servername.conf
使该配置文件生效:sudo a2enconf servername
再次测试:下面这样就算配置好了
如果还有别的错误,先百度,百度能解决最好,不能解决可以去看错误日志。
这可以通过在系统上运行的任何Web浏览器中输入服务器名称来验证:
1.通过ip访问网站:
2.Apache 2网页中文乱码的解决方法: sudo nano /etc/apache2/conf-availble/charset.conf
修改charset.conf的AddDefaultCharset UTF-8,把AddDefaultCharset UTF 8前面的#去掉即可。
3.然后重启apache2 sudo systemctl restart apache2
再次打开,OK,中文网页乱码解决了。
4.修改hosts文件配置
5.修改完成后可用域名访问