apache 配置 apache配置文件详解(apache设置的基本配置)
大家好,今天给各位分享apache 配置的一些知识,其中也会对apache配置文件详解(apache设置的基本配置)进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!
apache服务器如何设置域名和IP地址
1、找到apache安装目录下,conf文件夹下的httpd.conf文件,用记事本或其他文本编辑软件打开。
2、在文件中搜索”Include conf/extra/httpd-vhosts.conf“这一行,去掉前面的”#“,开启虚拟主机功能。
3、找到apache安装目录下,conf/extra文件夹中的httpd-vhosts.conf文件,用记事本或其他文本编辑软件打开。
4、在文件的最后,加上以下代码后保存:
<VirtualHost*:80>
ServerName www.domain.com
DocumentRoot D:/www/domain
<Directory"D:/www/domain">
Options+Indexes+Includes+FollowSymLinks+MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
其中,80是服务器的端口,ServerName后面的是域名,DocumentRoot和Directory后面的是网站程序所在的目录。
5、找到服务器的hosts文件,以Windows系统为例,在C:\windows\system32\drivers\etc目录下,用记事本或其他文本编辑软件打开。
6、在hosts文件的末尾添加一行126.63.36.3 www.domain.com,并保存,重启服务后即可通过域名访问。
如何配置Apache
Apache2.2.4 php5.2.1 mysql配置方法
第一步:
1.安装好apache2.2和mysql5
假设目录分别为:C:/Apache2.2,C:/MySQL5
2.解压php5.1.1-Win32.zip至C:/php5
3.安装navicat(图形化管理MySQL的工具)
注意:
安装MySQL5的时候,在一切默认安装至有finish按钮时,继续是MySQL的配置
默认选项至输入密码框的时候,记下自己输入的密码,一般为123456
第二步:
一.php.ini的配置
1找到php5目录下的 php.ini-dist或 php.ini.recommended文件,重命名为 php.ini
并复制到系统盘的windows目录下(以c:\windows为例).
2再把php目录下的php5ts.dll,libmysql.dll复制到目录 c:\windows\下。
3打开c:\windows\php.ini文件(关联到mysql)
设置扩展路径
查找 extension_dir有这么一行
extension_dir="./"
将此行改成
extension_dir="C:\php5\ext"
其中C:\php5是你安装php的路径。路径不正确将无法加载dll
(注意:有些php版本是;extension_dir="./"要把前面的分号去掉)
查找 extension
extension=php_mbstring.dll
extension=php_gd2.dll
extension=php_mysql.dl
把上面3项前面的分号去掉,这样apache启动时就可以加载这些dll了
php5时差问题
<?php echo date("Y-m-d H:i:s");?>时间相差八小时
为什么呢?PHP5系列版本新增了时区设置,默认为格林威治时间,与中国所在的东8区正好相差8个小时
查找date.timezone有这么一行
;date.timezone=
将;去掉,改成
date.timezone= PRC
开启php简写:
找到short_open_tag= Off改为 short_open_tag= On;如果已经为on,则不改.
以后就可以用形如<?=phpinfo();?>的写法的.功能和<?php echo phpinfo();?>一样.
(二).apache http.conf配置:(C:/apache2.2/conf tp.conf)
1.修改网站根目录
查找 DocumentRoot有这么一行
DocumentRoot"C:/Apache2.2 docs"
这就是你网站的根目录,你可以修改,也可以用默认的.如果改,还要修改下面这项,否则可能会出现 403错误
查找 This should be changed to whatever you set DocumentRoot to
在它下面两行有
<Directory"C:/Apache2/.2htdocs">
把上面两项的 C:/Apache2.2 docs改成你想要的目录
2.让apache支持*.php(网页)
查找 DirectoryIndex index.html
修改成
DirectoryIndex index.php index.html
这样index.php可以充当默认页面了
3.Apache中模块化安装php
查找# LoadModule foo_module modules/mod_foo.so
在此行后加入一行
LoadModule php5_module C:/php5/php5apache2_2.dll
//注意:其中C:/php5/php5apache2.dll是你安装php的相应路径.
不要把php5apache2_2.dll和 php5apache2.dll混淆.php5apache_2.dll只适用于apache版本2的.
PHP5压缩包里的php5apache2.dll只适用于apache2.0.*版本
如果是2.2.*以上版本,就可能会出现"Cannot load C:/php/php5apache2.dll into server: The specified module could not be found."或者:"The requested operation has failed"
4.查找 AddType application/x-gzip.gz.tgz
在此行后加入一行
AddType application/x-httpd-php.php(记住:前边有一个空格哦!!!)
这样apache就可以解析php文件了
注意:在以上操作完成后请重启服务器
5.测试
在网站根目录下(如果没有改动则为C:/Apache2.2 docs)创建一个 phpinfo.php文件
<?php
phpinfo();
?>
test.php
如果输出成功,则说明大功告成了
apache配置文件详解(apache设置的基本配置)
Apahce配置指令可以分为两块,核心指令和第三方提供的指令。在apache中,每条指令对应一个模块,而在所有模块中,最重要的是core _ module、so_moudle、http _ module和mpm模块。除了so _ mold,其他模块都不能关闭或禁止。一:httpd.conf
主服务器部分
1.ServerName:定义apache的默认主机名,可以是域名或IP地址。
2.ServerRoot:用于定义服务器所在的目录。在配置过程中,该路径通常由-前缀指定。
3.DocumentRoot:用于指定apache提供页面服务的根目录。该路径必须是绝对路径,而不是相对路径。如果有空格,需要用引号括起来。
4.ServerAdmin:发生错误后服务器向管理员发送电子邮件的地址。
5.ServerAlias和Alias:两者都用于映射目录,只是ServerAlias将映射的目录识别为CGI脚本目录,并将该目录中的所有文件视为CGI脚本。但是Alias只映射到一个普通的目录。
6.用户和组:用于定义用于运行apache子流程的用户和用户组。
7.Listen:用于定义监听apache的端口号。
8.LoadModule指令:用于加载模块或目标文件load module CGI _ module modules/mod _ CGI. so _ module。
9.错误文档:错误文档500 quot未知错误 quot错误文档404 quot自我意义的错误页面信息
/var/server/www/CGI-bin/missing _ 404. pl错误文档402
10.选项:决定在哪些目录中使用这些功能。这些特征如下:
无:选项命令不起作用。
Exec:允许CGI脚本在当前目录中执行。
包括:允许SSI函数。
允许使用IncludesNOEXEC: SSI函数,但禁用exec cgi和exec cmd函数。
索引:打开索引功能。例如,如果在请求目录的URLz中没有由DirectoryIndex指令指定的索引文件,服务器将自动返回请求目录的内容列表。
在当前环境中允许符号连接,但是在位置容器中将被忽略。
All:使用除多视图之外的所有功能,这也是选项的默认参数。
MultiViews:用于启动mod_negotiations模块提供的多视图功能。
1.ServerTokens: OS/Major/Full会影响页脚信息的细节,所以一般不建议使用。
集装箱部分
1.IfModule容器:容器作用于模块,会先判断模块是否加载,再决定是否处理,即只有判断结果为真,才会执行容器中的指令;否则,如果为false,所有指令都将被忽略。可以使用IfModule模块名或IfModule!模块名来确定模块是否已加载。
如果模块mpm_netware_module
index.html目录索引
/IfModule
加载后执行。
IfModule!mpm _ netware _模块
index.html目录索引
/IfModule
如果未加载,则执行。
2 IfDefine容器:它封装了一组只在条件为真时才生效的指令,作用于serverconfig、虚拟主机、目录、htaccess和IfModule。不同的是它判断模块是否加载,而IfDefine判断的是条件。
根据
if定义代理
load module proxy _ module modules/lib proxy. so
/IfDefine
3目录目录匹配容器:
目录:让它封装的指令在它指定的目录或者子目录下工作。该目录必须是完整的路径。当然,也可以使用通配符*?匹配目录,也考虑用来确定字符范围,但是无论哪一个都可以匹配/
目录/var/apache/html
订单拒绝,允许
全部否认
/目录
上面的示例禁止访问/var/apache/html目录。对/var/apache/html的任何请求都将被拒绝。
如果想让目录使用正则表达式,需要加一个~
目录~《^/var/apache{2}/html》
订单拒绝,允许
允许所有人
/目录
DirectoryMatch:类似于directory,只是它可以直接接受常规匹配,不需要添加~符号。
导演匹配《^/var/apache{2}/html》
订单拒绝,允许
允许所有人
/目录匹配
4文件和文件匹配
文件:仅适用于文件。也可以在正则表达式前使用通配符和和~来使用正则表达式。
文件“^.css
订单拒绝,允许
允许所有人
/文件
匹配:没有添加~符号的文件。
文件匹配”。,然后是文件和文件匹配容器,然后是位置和位置匹配容器。
位置/var/apache/html
订单拒绝,允许
允许所有人
/位置
Direcotry/var/apache/html
订单允许、拒绝
允许所有人
否认来自www.jons.com
/Direcotry
在上面的例子中,Apache将首先处理目录容器,最后处理的位置容器将覆盖以前的目录配置,因此www.json.com将被允许用户访问。如果容器相同,将根据字典顺序从短到长进行处理。
王者之心2点击试玩
关于本次apache 配置和apache配置文件详解(apache设置的基本配置)的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。