淮河人家 發表於 2025-8-25 14:29:22

阿里云ECS服务器安装Apache的步骤

<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li><a href="#_label0">环境</a></li><li><a href="#_label1">Apache</a></li><ul class="second_class_ul"><li><a href="#_lab2_1_0">安装</a></li><li><a href="#_lab2_1_1">配置</a></li></ul><li><a href="#_label2">参考</a></li><ul class="second_class_ul"></ul></ul></div><p class="maodian"><a name="_label0"></a></p><h2>环境</h2>
<ul><li>阿里云ECS服务器(CentOS 7.9)</li></ul>
<p class="maodian"><a name="_label1"></a></p><h2>Apache</h2>
<p class="maodian"><a name="_lab2_1_0"></a></p><h3>安装</h3>
<p>以下命令使用 <code>root</code> 账号操作。</p>
<p>使用 <code>yum</code> 命令安装Apache:</p>
<div class="jb51code"><pre class="brush:bash;">yum install httpd
</pre></div>
<p>启动Apache:</p>
<div class="jb51code"><pre class="brush:bash;">systemctl start httpd
</pre></div>
<p>检查Apache状态:</p>
<div class="jb51code"><pre class="brush:bash;">systemctl status httpd
</pre></div>
<p>设置Apache开机启动:</p>
<div class="jb51code"><pre class="brush:bash;">systemctl enable httpd
</pre></div>
<p>打开80端口:</p>
<div class="jb51code"><pre class="brush:bash;">iptables -I INPUT -p tcp --dport 80 -j ACCEPT
</pre></div>
<p>测试:</p>
<div class="jb51code"><pre class="brush:bash;">nc -zv localhost 80
</pre></div>
<p>打开浏览器,访问 <code>http://&lt;公网IP&gt;</code> :</p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202508/2025082514254356.jpg" /></p>
<p>至此,Apache安装成功。</p>
<p class="maodian"><a name="_lab2_1_1"></a></p><h3>配置</h3>
<p>Apache的主配置文件是 <code>/etc/httpd/conf/httpd.conf</code> 。其中包含如下内容:</p>
<div class="jb51code"><pre class="brush:plain;">......
ServerRoot "/etc/httpd" # Apache的主目录(可以看做是Apache的安装目录)
......
Listen 80 # 监听端口
......
DocumentRoot "/var/www/html" # 网站内容所在
......
&lt;IfModule dir_module&gt;
    DirectoryIndex index.html # 当访问一个目录时,所访问的默认文件
&lt;/IfModule&gt;
......
ErrorLog "logs/error_log" # 错误日志
......
LogLevel warn # 日志级别
......
IncludeOptional conf.d/*.conf # 包含的其它配置文件</pre></div>
<p>可见,网站的内容是在 <code>/var/www/html</code> 目录,默认访问的文件是 <code>index.html</code> 。</p>
<p>在该目录下创建 <code>index.html</code> 文件,内容是 <code>hello world!</code> 。在浏览器里访问 <code>http://&lt;公网IP&gt;</code> ,实际访问的就是该文件。</p>
<p style="text-align:center"><img alt="" src="https://img.jbzj.com/file_images/article/202508/2025082514254379.png" /></p>
<p>还有一个问题: <code>/var/www/html</code> 目录是刚才安装Apache时所创建的,这个目录是属于 <code>root</code> 账户的:</p>
<div class="jb51code"><pre class="brush:bash;"># ll -d /var/www/html
drwxr-xr-x 2 root root 4096 May 302023 /var/www/html</pre></div>
<p>如果希望其它用户能够访问(读/写)该目录,则需要配置一下。</p>
<p>首先创建 <code>ding</code> 账号:</p>
<div class="jb51code"><pre class="brush:bash;">useradd -m ding # 同时创建 /home/ding 目录</pre></div>
<p>设置密码:</p>
<div class="jb51code"><pre class="brush:bash;">passwd ding</pre></div>
<p>如果需要,可以给 <code>ding</code> 账号赋予 <code>sudo</code> 权限:</p>
<div class="jb51code"><pre class="brush:bash;">usermod -aG wheel ding
</pre></div>
<p>如果不想在 <code>sudo</code> 操作时输入密码,编辑 <code>/etc/sudoers</code> 文件:</p>
<div class="jb51code"><pre class="brush:bash;">visudo
</pre></div>
<p>添加如下内容:</p>
<div class="jb51code"><pre class="brush:bash;">## Same thing without a password
# %wheel      ALL=(ALL)       NOPASSWD: ALL
ding    ALL=(ALL)       NOPASSWD: ALL # 新添加的内容</pre></div>
<p>现在 <code>ding</code> 账号有 <code>sudo</code> 权限了,并且 <code>sudo</code> 操作不需要输入密码。</p>
<p>接下来的操作,切换到 <code>ding</code> 用户:</p>
<div class="jb51code"><pre class="brush:bash;">su - ding</pre></div>
<p>将用户 ding 加入到 Apache 的组中:</p>
<div class="jb51code"><pre class="brush:bash;">sudo usermod -a -G apache ding
</pre></div>
<p>修改 <code>/var/www/html</code> 目录的属组和权限:</p>
<div class="jb51code"><pre class="brush:bash;"># 将 /var/www/html 的属组改为 apache
sudo chgrp -R apache /var/www/html
# 设置权限:所有者(apache)读写执行,属组(apache)读写执行,其他用户只读和执行。
# g=rwx 表示给属组赋予读(r)写(w)执行(x)权限
# o=rx 表示给其他用户赋予读(r)和执行(x)权限
sudo chmod -R g=rwx,o=rx /var/www/html
# 另外,还需要设置 setgid 位,保证未来新建的文件和子目录也继承相同的属组
sudo chmod g+s /var/www/html</pre></div>
<p>修改完毕后,需要重新登录一下 <code>ding</code> 账号。</p>
<p>现在,使用 <code>ding</code> 账号就能访问和修改 <code>/var/www/html</code> 目录了。</p>
<p class="maodian"><a name="_label2"></a></p><h2>参考</h2>
<ul><li><code>https://help.aliyun.com/zh/ecs/getting-started/use-the-ecs-instance-in-the-console</code></li></ul>
<p>到此这篇关于阿里云ECS服务器安装Apache的文章就介绍到这了,更多相关阿里云ECS安装Apache内容请搜索琼殿技术社区以前的文章或继续浏览下面的相关文章希望大家以后多多支持琼殿技术社区!</p>
頁: [1]
查看完整版本: 阿里云ECS服务器安装Apache的步骤