时间:2021-07-01 10:21:17 帮助过:2人阅读
Apache 配置详解
配置文件:httpd.conf
1.基本配置
ServerRoot "D:/Apache" Apache的安装目录
Listen 80 服务器监听的端口号
ServerName www.xxx.com:80 主站点名称(网站的主机名)
ServerAdmin xxx@qq.com 管理员的邮件地址
DocumentRoot "D:/WWW" 网站的根目录
2.以下是对主站点目录进行访问控制
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
选项详解:
Options:配置在特定目录中使用那些属性,其值和含义如下
ExecCGI 允许在此目录下执行CGI脚本
FollowSymLinks 在此目录下允许文件系统使用符号连接
Indexs 在用户访问该目录时,如果找不到DirectoryIndex指定的主页文件(如index.html)则返回该目录的文件列表给用户
SymLinksIfOwnerMatch 当使用符号连接时,只有符号连接的拥有者与文件的拥有者相同时才可以访问
AllowOverride: 允许村子与.htaccess文件中的指令(.htaccess的文件名可以更改,其文件名有AccessFileName指令决定)
None: 当设置为None时,默认不搜索服务器目录的.htaccess文件,可以减小服务器开销
All: 在.htaccess文件中可以使用所有的指令
Order: 控制在访问时Allow,deny两个访问规则哪个优先
All:允许访问的主机列表
Deny:拒绝访问的主机列表
DirectoryIndex: index.html index.htm index.php 默认主页的文件
3.虚拟站点的配置
条件:在http.conf 中将 httpd-vhosts.conf包含进来
# Virtual hosts Include conf/extra/httpd-vhosts.conf
在 httpd-vhost.conf中配置
(1)基于IP的虚拟主机
修改hosts文件,添加3个域名与之对应
192.168.1.11 www.test1.com 192.168.1.12 www.test2.com 192.168.1.13 www.test3.com
建立虚拟主机存放文件的根目录,如
www/test1/1.html www/test2/2.html www/test3/3.html
在httpd-vhosts.conf进行如下配置
<VirtualHost 192.188.1.11*80> ServerName www.test1.com DocumentRoot "www/test1" <Directory "www/test1"> Options Indexs FollowSysLinks AllowOverride None Order allow deny allow from all DirectoryIndex index.html index.htm index.php </Directory> </VirtualHost> <VirtualHost 192.168.1.12:80> ServerName www.test2.com DocumentRoot /www/test2/ <Directory "/www/test2"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow From All </Directory> </VirtualHost> <VirtualHost 192.168.1.13:80> ServerName www.test3.com DocumentRoot /www/test3/ <Directory "/www/test3"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow From All </Directory> </VirtualHost>
(2)基于主机名
设置域名映射同一个主机
192.168.1.10 www.test1.com 192.168.1.10 www.test2.com 192.168.1.10 www.test3.com
设置存放网页的根目录
www/test1/1.html www/test2/2.html www/test3/3.html
在使用基于域名的虚拟主机时,必须指定服务器的IP地址和可能的访问端口来使主机接受请求,可以使用NameVirtualHost指令来配置,如果服务器上所有的IP都会用到,则可以使用*来表示,在NameVirtualHost指定的ip并不会让服务器监听这个IP
然后配置<VirtualHost>
如果在现有的WEB服务器上配置虚拟主机,则必须为现存的虚拟主机也配置<VirtualHost>,其中ServerName 和 DocumentRoot包含的内容应该与全局的内容一致,且要放在配置文件的最前面,作为默认主机的配置
NameVirtualHost *:80 <VirtualHost *:80> ServerName www.test1.com DocumentRoot "www/test2" <Directory "www/test1"> Options Indexs FollowSymLinks AllowOverride None Order allow,deny allow from all </Directory> </VirtualHost> <VirtualHost *:80> ServerName www.test2.com DocumentRoot "www/test2" <Directory "www/test2"> Options Indexs FollowSymLinks AllowOverride None Order allow,deny allow from all </Directory> </VirtualHost> <VirtualHost *:80> ServerName www.test3.com DocumentRoot "www/test3" <Directory "www/test3"> Options Indexs FollowSymLinks AllowOverride None Order allow,deny allow from all </Directory> </VirtualHost>
(3)基于端口
修改httpd.conf
设置为 Listen 8001、Listen 8002
修改虚拟主机配置文件 httpd-vhosts.conf
<VirtualHost *:8001> ServerName www.test1.com DocumentRoot "www/test1" </VirtualHost> <VirtualHost *:8002> ServerName www.test2.com DocumentRoot "www/test2" </VirtualHost>
PHP 配置
配置文件:php.in
1. 模块加载:
extension = php_mysql.dll
2. 修改模块的目录
extension_dir = "D:/php/ext"
也可以将 D:/php ,D:/php/ext 添加到系统环境变量中
3. 在Apache中配置php
更改httpd.conf
LoadModule php5_module "D:/php/php5apache2_2.dll 添加PHP模块
PHPIniDir "D:/php" 配置php.in路径
配置AddType
AddType application/x-httpd-php .php AddType application/x-httpd-php .txt
4. register_globals = Off 设置是否开启全局变量
若设置为On
已GET/POST提交的参数,直接可以使用变量用调用, 建议不开启
5.设置时区:date.timezone =PRC
以上就是本篇文章的所有内容,希望对你的PHP学习提供到帮助!
相关文章:
Apache和PHP的配置
以上就是Apache和PHP的配置详细讲解的详细内容,更多请关注Gxl网其它相关文章!