`

CentOS中增加apache虚拟主机的配置

 
阅读更多

修改httpd.conf

打开appserv的安装目录,找到httpd.conf文件,分别去掉下面两行文字前面的#号。

#LoadModule vhost_alias_module modules/mod_vhost_alias.so  

增加虚拟主机配置

<pre name="code" class="html">NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.www.dedecms128.dev
    DocumentRoot "/var/www/html/www.dedecms128.dev"
    ServerName www.dedecms128.dev
    ServerAlias www.dedecms128.dev
    php_admin_value open_basedir "/var/www/html/www.dedecms128.dev/:/tmp/"
    ErrorLog logs/www.dedecms128.dev-error_log
    CustomLog logs/www.dedecms128.dev-access_log common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.www.phpcms128.dev
    DocumentRoot "/var/www/html/www.phpcms128.dev"
    ServerName www.phpcms128.dev
    ServerAlias www.phpcms128.dev
    php_admin_value open_basedir "/var/www/html/www.phpcms128.dev/:/tmp/"
    ErrorLog logs/www.phpcms128.dev-error_log
    CustomLog logs/www.phpcms128.dev-access_log common
</VirtualHost>

PHP报错信息[按照上面配置不会遇到此错误]:

[error] [client 192.168.147.1] PHP Warning: include(): Failed opening '../phpcms/base.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/html/www.phpcms128.dev/install/install.php on line 5, referer: http://www.phpcms128.dev/install/install.php


解决方法如下:

Apache中open_basedir的安全配置

open_basedir = .:/tmp/
这个设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,有效防止php木马跨站运行。

在Apache服务器中,切忌一定要在虚拟主机配置文件中添加以下代码,否则PHP木马脚本可以浏览你服务器上的任意文件,这意味着你的服务器很快会被攻破。


添加代码如下:
php_admin_value open_basedir "/usr/local/apache/htdocs/www/:/tmp/"
注意:把/usr/local/apache/htdocs/www/替换成你自己的网站目录
例如:
编辑虚拟主机配置文件
vi /etc/httpd/conf.d/vhost.conf
在你的网站配置中添加下面的代码
<VirtualHost *:80>
php_admin_value open_basedir "/usr/local/apache/htdocs/www/:/tmp/"
</VirtualHost>
需要注意的是:
因为/etc/httpd/conf.d/vhost.conf中设置了open_basedir之后, 虚拟用户就不会再自动继承php.ini中的open_basedir设置值了,这就难以达到灵活的配置措施, 所以建议您不要在/etc/httpd/conf.d/vhost.conf中设置此项限制。可以在php.ini中设置open_basedir = .:/tmp/

分享到:
评论

相关推荐

    php+apache虚拟主机配置.rar

    在"php+apache虚拟主机配置"中,我们需要完成的主要任务是配置Apache服务器,使其能够识别和解析PHP文件,并设置虚拟主机以便在同一台服务器上托管多个网站。下面将详细介绍这个过程: 1. **安装Apache和PHP**: ...

    教你在CentOS 8上安装与配置Apache虚拟主机.doc

    在 CentOS 8 上安装与配置 Apache 虚拟主机 本文档旨在指导用户在 CentOS 8 上安装和配置 Apache 虚拟主机,提供了详细的安装和配置步骤,以及相关的命令和配置文件。 知识点1: Apache 服务器的介绍 Apache 服务器...

    CentOS下Apache配置多域名或者多端口映射

    本文将详细介绍如何在 CentOS 下的 Apache 中配置多域名和多端口映射。 #### 二、基础配置 首先,我们来看一下基本的 Apache 配置。默认情况下,CentOS 下 Apache 的网站根目录位于 `/var/www/html`。如果我们将一...

    CentOS 7中 Apache Web 服务器安装配置教程

    学习如何在CentOS 7 中的 Apache 上托管你自己的网站,这是一个可靠、流行且易于配置的 Web 服务器。 我托管自己的网站已经有很多年了。自从 20 多年前从 OS/2 切换到 Linux 以来,我一直将 Apache 作为我的服务器...

    centos搭建DNS服务器配置虚拟主机.doc

    CentOS 搭建 DNS 服务器配置虚拟主机 DNS 服务器搭建 1. 使用 yum -y install bind* 命令下载 DNS 服务器软件。 2. 编辑 DNS 配置文件,打开接口,允许任何客户端的地址提出查询,listen-on port 53 可以改为自己...

    centos6.6 配置apache,php,mysql安装文档

    然后在CentOS中编辑Apache的配置文件`httpd.conf`,取消`Include conf/extra/httpd-vhosts.conf`的注释,并在`httpd-vhosts.conf`中添加虚拟主机记录。每个虚拟主机应包含`ServerAdmin`、`DocumentRoot`、`...

    CentOS 下配置Apache服务器

    你可以通过创建虚拟主机(Virtual Hosts)配置多个网站,每个网站有自己的文档根目录和配置。 - **安全设置**:考虑开启SSL支持,为网站提供加密连接,需要用到SSL证书。 - **日志记录**:Apache的日志文件通常...

    Linux CentOS离线环境下安装Apache所需要的完整包

    4. 安装完Apache后,需要配置Apache,包括设置监听端口、虚拟主机、日志文件位置等。 5. 启动Apache服务,通常使用 `systemctl start httpd` 命令。 6. 要使Apache在启动时自动启动,可以运行 `systemctl enable ...

    centos6.5 安装apache2.4批量部署脚本

    3. 配置`Apache`,这包括设置监听端口、虚拟主机、日志位置等。 4. 初始化`Apache` 服务并添加到系统服务管理中,比如使用`chkconfig` 添加到`sysvinit` 或者`systemd`。 5. 启动`Apache` 服务,并检查是否成功运行...

    centos7创建基于主机头虚拟主机.html

    为什么要搭建虚拟主机?节约开支,一般是基于Apache的虚拟主机,搭建虚拟主机的方式有三种,有基于IP的虚拟主机,不过最实用的还是基于主机头的虚拟主机

    linux中apache安装与配置

    总结,Linux下Apache的安装和配置涉及到以下几个关键步骤:安装Apache软件包,启动并设置服务开机启动,配置主要的Apache设置,创建和启用虚拟主机,以及调整防火墙规则。这些步骤将帮助你构建起一个基础的Web服务器...

    【负载均衡】在centos下面做apache和tomcat的负载均衡

    配置虚拟主机可以让Apache同时处理多个域名或应用。 - **JK模块(mod_jk)**:这是Apache与Tomcat之间通信的关键,它是一个负载均衡和反向代理模块,负责将HTTP请求转发到适当的Tomcat实例。 - **Load Balancing ...

    CentOS7下 Apache的安装配置方法

    本文将详细介绍在 CentOS 7 下如何安装和配置 Apache。 首先,安装 Apache 的过程如下: 1. 检查系统中是否已安装 Apache。通过运行 `rpm -qa | grep httpd` 命令来查询。如果没有任何输出,说明 Apache 尚未安装...

    CentOS-6.5-apache网站服务器配置实例.doc

    在CentOS 6.5系统中配置Apache作为网站服务器,以实现基于域名的虚拟主机功能,涉及到的关键知识点包括: 1. **DNS解析**:为了使域名与IP地址对应,需要在DNS服务器的正向和反向解析文件中添加相应的记录。正向...

    Centos7-64位全新安装Apache和PHP

    ### CentOS 7-64位全新安装Apache与...以上步骤详细介绍了如何在CentOS 7-64位系统中安装Apache和PHP,包括必要的环境配置、不同安装方法的选择以及虚拟主机的配置等。这些步骤将帮助用户顺利地搭建起Web服务器环境。

    CentOS7-安装部署Apache

    Apache服务器支持包括但不限于以下特性:支持最新的HTTP/1.1协议,提供基于文件的配置过程,支持CGI(通用网关接口),提供基于IP和域名的虚拟主机支持,支持多种认证方式,集成Perl处理模块,集成代理服务器模块,...

    CentOS 6.5搭建Apache整合SVN 1.8.5服务器(多版本库权限配置)

    **步骤5:配置Apache的SVN虚拟主机** 在Apache配置目录下,创建一个新的配置文件,如`/etc/httpd/conf.d/svn.conf`,添加以下内容: ```apache *:80&gt; ServerName svn.example.com DocumentRoot "/var/www/html" ...

    centOS用-Apache-构建-HTTP-服务器.doc

    总结,构建一个 CentOS 上的 Apache HTTP 服务器涉及安装 Apache 及其依赖,设置静态和动态内容,配置防火墙规则,启用虚拟主机,以及(可选)提供 SSL 支持。这个过程为用户提供了一个功能强大且安全的 Web 服务...

Global site tag (gtag.js) - Google Analytics