apache怎么启动:分系统实操方案
apache怎么启动,分为Windows系统图形服务、Windows命令行、Linux系统systemd命令三类主流操作,Windows环境你可通过服务面板启动httpd服务,也可打开cmd进入apache安装目录执行httpd命令;Linux主流发行版如CentOS7、Ubuntu16.04及更高版本使用systemctl控制服务,旧版Linux采用service指令,启动前你需要确认80端口没有被Nginx、IIS等程序占用,且httpd.conf主配置文件无语法报错,该整套操作适用本地开发调试、小型网站部署场景,不适用于容器内隔离部署、多实例apache集群环境。
apache怎么启动:Windows系统操作
图形化方式操作,按下Win+R输入services.msc打开系统服务列表,在列表找到名称为Apache2.4或者httpd的服务条目,右键点击选择启动。服务状态显示正在运行,代表启动成功。如果启动直接报错,优先排查端口占用,打开cmd输入netstat-ano|findstr":80",查看占用80端口的进程PID,在任务管理器结束对应进程。
命令行方式,你需要打开cmd窗口,切换到apache安装目录下的bin文件夹,例如安装路径C:\Apache24\bin,输入httpd.exe执行启动。命令行启动会保留控制台窗口,关闭窗口apache服务就会停止,适合临时测试,不适合长期后台运行网站。
校验配置文件语法,在bin目录执行httpd-t,返回SyntaxOK代表配置文件无语法错误,出现报错信息,需要打开httpd.conf修改对应行内容,配置语法错误会直接造成apache启动失败。
apache怎么启动:Linux系统操作
| 操作系统版本 | 启动命令 | 查看运行状态命令 | 开机自启命令 |
|---|---|---|---|
| CentOS7+、RockyLinux | systemctlstarthttpd | systemctlstatushttpd | systemctlenablehttpd |
| Ubuntu、Debian | systemctlstartapache2 | systemctlstatusapache2 | systemctlenableapache2 |
| CentOS6(不推荐) | servicehttpdstart | servicehttpdstatus | chkconfighttpdon |
执行启动命令后,通过status命令查看输出,显示active(running)就是正常运行。Linux系统启动失败,除端口冲突外,文件权限也是高频原因,网站根目录文件权限不能设置为0777,权限过大会触发系统安全拦截,导致apache无法读取网页文件。
验证apache是否对外提供服务,打开浏览器访问127.0.0.1,页面出现apache默认欢迎页,代表服务启动且访问正常。防火墙规则会拦截外部访问,CentOS需要放行http服务,执行firewall-cmd--add-service=http--permanent。
端口占用是启动失败最常见诱因。
你在Linux中执行ss-tulpn|grep:80,查询占用80端口的进程。如果80端口被占用,有两种处理方式,关闭占用程序,或者修改httpd.conf中的Listen配置项,更换监听端口,例如Listen8080,修改配置后必须重启apache才能生效。
该方法的适用边界是单机单apache实例,服务器存在多个apache实例时,不同实例要配置独立监听端口与独立配置目录,直接执行全局启动命令只会启动默认实例,其余实例需要指定配置文件路径单独启动。
macOS系统自带apache,打开终端输入sudoapachectlstart,输入管理员密码完成启动,sudoapachectlstop用于停止服务,sudoapachectl-t校验配置。macOS的apache配置文件路径为/etc/apache2/httpd.conf,修改监听端口、虚拟主机都在此文件内操作。
