分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 软件开发

配置http支持php及虚拟主机

发布时间:2023-09-06 01:56责任编辑:郭大石关键词:配置http虚拟主机
配置httpd支持php
  • httpd主配置文件/usr/local/apache2.4/conf/httpd.conf
  • vim /usr/local/apache2.4/conf/httpd.conf
    修改以下4个地方ServerName ?这个打开后开启httpd后没有警告Require all denied ??这个修改为Require all granted 防止打开虚拟主机配置文件时403AddType application/x-httpd-php .php 加上这行才可以解析phpDirectoryIndex index.html index.php ?添加默认索引页DocumentRoot "/usr/local/apache2.4/htdocs" 这个参数可以定义网站的域名根目录
  • /usr/local/apache2.4/bin/apachectl -t //测试语法,改完配置需要先检查下再加载
  • /usr/local/apache2.4/bin/apachectl graceful ?//重新加载配置文件,不重启服务
  • iptables -I INPUT -p tcp --dport 80 -j ACCEPT ?//打开80端口
  • netstat -lntp //查看80端口
[root@aminglinux-02 ~]# netstat -lntpActive Internet connections (only servers)Proto Recv-Q Send-Q Local Address ??????????Foreign Address ????????State ??????PID/Program name ???tcp ???????0 ?????0 0.0.0.0:22 ?????????????0.0.0.0:* ??????????????LISTEN ?????1122/sshd ??????????tcp ???????0 ?????0 127.0.0.1:25 ???????????0.0.0.0:* ??????????????LISTEN ?????2094/master ????????tcp6 ??????0 ?????0 :::3306 ????????????????:::* ???????????????????LISTEN ?????2658/mysqld ????????tcp6 ??????0 ?????0 :::80 ??????????????????:::* ???????????????????LISTEN ?????2387/httpd ?????????tcp6 ??????0 ?????0 :::22 ??????????????????:::* ???????????????????LISTEN ?????1122/sshd ??????????tcp6 ??????0 ?????0 ::1:25 ?????????????????:::* ???????????????????LISTEN ?????2094/master ????????
  • 在物理机浏览器上打开主机ip地址能访问
  • 打不开ip主页排查思路
    -现在物理机上查看Ip能不能ping通,telnet能不能通,再查看虚拟机上有没有打开80端口
    [root@akuilinux01 ~]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT[root@akuilinux01 ~]# iptables -nvLChain INPUT (policy ACCEPT 58 packets, 3900 bytes)pkts bytes target ????prot opt in ????out ????source ??????????????destination ????????0 ????0 ACCEPT ????tcp ?-- ?* ?????* ??????0.0.0.0/0 ???????????0.0.0.0/0 ???????????tcp dpt:80
  • 写一个测试php,vim /usr/local/apache2.4/htdocs/1.php
[root@aminglinux-02 ~]# vim /usr/local/apache2.4/htdocs/1.php<?phpphpinfo();?>
  • 在物理机浏览器上打开主机ip地址/1.php,可以打开php信息页面,如果不支持php解析的话,访问该文件时会显示源代码。
  • 故障排查

    • 检查Apache是否已加载PHP模块

      [root@aminglinux-02 ~]# /usr/local/apache2.4/bin/apachectl -MLoaded Modules:core_module (static)so_module (static)http_module (static)mpm_event_module (static)authn_file_module (shared)authn_core_module (shared)authz_host_module (shared)authz_groupfile_module (shared)authz_user_module (shared)authz_core_module (shared)access_compat_module (shared)auth_basic_module (shared)reqtimeout_module (shared)filter_module (shared)mime_module (shared)log_config_module (shared)env_module (shared)headers_module (shared)setenvif_module (shared)version_module (shared)unixd_module (shared)status_module (shared)autoindex_module (shared)dir_module (shared)alias_module (shared)php7_module (shared)
    • 查看php模块文件
      [root@aminglinux-02 ~]# ls /usr/local/apache2.4/modules/libphp7.so /usr/local/apache2.4/modules/libphp7.so[root@aminglinux-02 ~]# ls /usr/local/apache2.4/modules/libphp5.so /usr/local/apache2.4/modules/libphp5.so
    • 查看apache配置文件这四项
#LoadModule php5_module ???????modules/libphp5.soLoadModule php7_module ???????modules/libphp7.soServerName www.example.com:80 ???AddType application/x-compress .Z ???AddType application/x-gzip .gz .tgz ???Addtype application/x-httpd-php .php<Directory /> ???AllowOverride none ???Require all granted</Directory>
  • “/usr/local/apache2.4/bin/apachectl -t”检查配置文件是否存在语法错误
    • 配置PHP7解析只需要把配置文件中加载的php模块换成php7的,其他相同
    • ctrl+r用途:反向搜索并调用执行过的命令。(reverse-i-search)。
      使用方法:按ctrl+r后命令行会变成“(reverse-i-search)`‘: ”状态,然后输入使用过的参数,此时会直接显示出相关的命令,回车即可执行该命令。

httpd的默认虚拟主机

  • windows定义hosts
    • C:\Windows\System32\drivers\etc\hosts
      192.168.21.128 www.abc.com www.123.com
    • 可以ping检查下是不是解析到你需要的ip
  • 一台服务器可以访问多个网站,每个网站都是一个虚拟主机
  • 概念:域名(主机名)、DNS(域名解析系统)、hosts(局域网的域名解析)
  • 任何一个域名解析到这台机器,都可以访问的虚拟主机就是默认虚拟主机
  • vim /usr/local/apache2/conf/httpd.conf ?
# Virtual hostsInclude conf/extra/httpd-vhosts.conf打开这个选项,启用虚拟主机配置文件/usr/local/apache2.4/conf/extra/httpd-vhosts.conf
  • vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
<VirtualHost *:80> ???DocumentRoot "/data/wwwroot/abc.com" ???ServerName abc.com ???ServerAlias www.abc.com www.123.com ???ErrorLog "logs/abc.com-error_log" ???CustomLog "logs/abc.com-access_log" common</VirtualHost><VirtualHost *:80> ???DocumentRoot "/data/wwwroot/111.com" ???ServerName 111.com ???ServerAlias www.example.com ???ErrorLog "logs/111.com-error_log" ???CustomLog "logs/111.com-access_log" common</VirtualHost>
  • 创建目录
    [root@aminglinux-02 ~]# mkdir /data/wwwroot[root@aminglinux-02 ~]# mkdir /data/wwwroot/abc.com[root@aminglinux-02 ~]# mkdir /data/wwwroot/111.com
  • 创建index.php文件
    [root@aminglinux-02 ~]# vim /data/wwwroot/abc.com/index.php[root@aminglinux-02 ~]# vim /data/wwwroot/111.com/index.php<?phpecho "abc.com";
  • /usr/local/apache2/bin/apachectl –t
  • /usr/local/apache2/bin/apachectl graceful
  • 测试虚拟主机
root@aminglinux-02 ~]# curl -x192.168.16.120:80 abc.comabc.com[root@aminglinux-02 ~]# curl -x192.168.16.120:80 111.com111.com[root@aminglinux-02 ~]# curl -x192.168.16.120:80 www.dahjdhajabc.comabc.com[root@aminglinux-02 ~]# 
  • 这里的abc.com为默认虚拟主机

扩展

  • apache所有的主机都指向第一个

配置http支持php及虚拟主机

原文地址:http://blog.51cto.com/akui2521/2121361

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved