smile908

导航

将静态网页部署在云服务器

环境

我的云服务器操作系统是CentOS Linux release 7.6,当然云服务器可以自行更换操作系统

我在阿里云的云服务器的实例中进行远程连接,准备安装httpd

rpm -qa | grep httpd

输入这个命令,控制台并没有给我任何的响应,我也不知道安装没httpd,于是不管安装没用,直接执行httpd的执行命令

yum -y install httpd

结果报错,我很无奈,看报错log

 

看到了加载fastmirror错误,百度修改了两处文件

 

 fastestmirror是yum的一个加速插件,这里是插件提示信息是插件不能用了。
步骤:

1.修改插件的配置文件
# vi /etc/yum/pluginconf.d/fastestmirror.conf
【Tips】:用Tab可补全
将enabled=1改为enabled=0

2.修改yum的配置文件
# vi /etc/yum.conf
将plugins=1改为plugins=0

【注】以上操作需要切换到root用户下,否则会出现vim e505:read only 和vim e212错误

3.reboot
如上,重启服务器,继续安装httpd,还是报错

 

log显示没用httpd的包可用,于是又百度

安装httpd,如果出现No package httpd available,可以尝试:

yum --disableexcludes=all install -y httpd 这句命令,这次安装终于成功了

 

 

 

启动Apache并验证

 service httpd start

service httpd status

 

 

 没错,又失败了,我不理解,傻逼服务器

 

 

 原来是nginx占领了80号端口,杀死就行

centos7启动httpd命令有两个可以用
service httpd start    systemctl start httpd.service
如果出现如下报错
Job for httpd.service failed because the control process exited with error code. See “systemctl status httpd.service” and “journalctl -xe” for details.
应该是端口被占用,查看端口
netstat -antlp | grep 80
在这里插入图片描述
是nginx占用了端口
systemctl stop nginx.service 停用nginx即可
如果想开机关闭nginx则输入命令 systemctl disable nginx

 

 

 Apache的httpd服务启动成功

 

 

 接着在浏览器里访问linux主机的IP可以看到下面的页面说明启动成功,什么80端口占用,防火墙的问题就不在这里记录了。

输入你的云服务器的外网ip地址,能访问到这个界面就算成功了

 

 

 

修改httpd.conf

yum安装的路径一般在/etc/httpd/conf/httpd.conf,自定义安装的可以用find / -name httpd.conf找找。编辑配置文件或使用默认路径都是可以的:

使用默认路径:不用修改ServerRoot和Directory,直接把文件夹内容拷贝到默认的路径/var/www/html;
修改配置:修改ServerRoot为自定义的文件夹,然后替换路径为/var/www/html的Directory节点的路径为自定义路径。
记得修改文件夹归属或读权限,不然可能没有读权限。

重启httpd
service httpd restart
检查
重新访问ip,如果返回403,有几种可能:

文件夹权限
ServerRoot下没有index.html
SELinux为开启状态(禁用SELinux)
最后一种情况居多。

 

第二种版本

修改httpd.conf

yum安装的路径一般在/etc/httpd/conf/httpd.conf,自定义安装的可以用find / -name httpd.conf找找。编辑配置文件或使用默认路径都是可以的:

  • 使用默认路径:不用修改ServerRoot和Directory,直接把文件夹内容拷贝到默认的路径/var/www/html;
cp /etc/httpd/conf/httpd.conf /var/www/html

 

默认发布目录:

/var/www/html

如果/var目录下没有/www/html这两个文件夹,可以自己创建

默认发布文件:
/var/www/html/test.html ##需自行建立

 

复制1个静态文件到目录 /var/www/html

现在html文件夹下有2个文件:httpd.conf , test.html

(rlcVenv) [root@67 logicCheck]# cp test.html /var/www/html
(rlcVenv) [root@67 logicCheck]# cd /var/www/html
(rlcVenv) [root@67 html]# ls
httpd.conf  test.html

重启httpd

1 service httpd restart

 

访问 :

http://10.2.1.92/test.html 

遇到的问题:

403:没有权限访问test.html

分析:这只少证明是可以访问到test.html资源的,只是没有权限打不开,所以这里修改html文件夹的权限为所有人可读

修改html文件夹权限

(rlcVenv) [root@67 www]# sudo chmod 777 html -R

修改后可以看到html文件夹变成绿色,表示所有人可读 可写了

 刷新页面,OK 成功啦 ~!

检查

重新访问ip,如果返回403,有几种可能:

  • 文件夹权限
  • ServerRoot下没有index.html
  • SELinux为开启状态(禁用SELinux)

最后一种情况居多。

 

最后,感谢大佬

https://blog.csdn.net/CL_YD/article/details/84568828

http://www.cnblogs.com/kaerxifa/p/11309709.html

posted on 2022-08-24 16:36  smile908  阅读(530)  评论(0编辑  收藏  举报