搜索
首页后端开发php教程Apache和PHP的配置详细讲解

Apache和PHP的配置详细讲解

Feb 23, 2018 am 10:01 AM
apachephp讲解

我们在配置PHP运行环境时很多初学者都会选择使用phpstudy作为开发环境工具,我们这就来讲一下在phpstudy中的apache的配置和PHP的配置,废话少说我们一起来看一下本篇文章吧!

 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

 然后配置017421ec4e1d87ae7f66fefe80084b1d

如果在现有的WEB服务器上配置虚拟主机,则必须为现存的虚拟主机也配置017421ec4e1d87ae7f66fefe80084b1d,其中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的配置详细讲解的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
PHP的当前状态:查看网络开发趋势PHP的当前状态:查看网络开发趋势Apr 13, 2025 am 12:20 AM

PHP在现代Web开发中仍然重要,尤其在内容管理和电子商务平台。1)PHP拥有丰富的生态系统和强大框架支持,如Laravel和Symfony。2)性能优化可通过OPcache和Nginx实现。3)PHP8.0引入JIT编译器,提升性能。4)云原生应用通过Docker和Kubernetes部署,提高灵活性和可扩展性。

PHP与其他语言:比较PHP与其他语言:比较Apr 13, 2025 am 12:19 AM

PHP适合web开发,特别是在快速开发和处理动态内容方面表现出色,但不擅长数据科学和企业级应用。与Python相比,PHP在web开发中更具优势,但在数据科学领域不如Python;与Java相比,PHP在企业级应用中表现较差,但在web开发中更灵活;与JavaScript相比,PHP在后端开发中更简洁,但在前端开发中不如JavaScript。

PHP与Python:核心功能PHP与Python:核心功能Apr 13, 2025 am 12:16 AM

PHP和Python各有优势,适合不同场景。1.PHP适用于web开发,提供内置web服务器和丰富函数库。2.Python适合数据科学和机器学习,语法简洁且有强大标准库。选择时应根据项目需求决定。

PHP:网络开发的关键语言PHP:网络开发的关键语言Apr 13, 2025 am 12:08 AM

PHP是一种广泛应用于服务器端的脚本语言,特别适合web开发。1.PHP可以嵌入HTML,处理HTTP请求和响应,支持多种数据库。2.PHP用于生成动态网页内容,处理表单数据,访问数据库等,具有强大的社区支持和开源资源。3.PHP是解释型语言,执行过程包括词法分析、语法分析、编译和执行。4.PHP可以与MySQL结合用于用户注册系统等高级应用。5.调试PHP时,可使用error_reporting()和var_dump()等函数。6.优化PHP代码可通过缓存机制、优化数据库查询和使用内置函数。7

PHP:许多网站的基础PHP:许多网站的基础Apr 13, 2025 am 12:07 AM

PHP成为许多网站首选技术栈的原因包括其易用性、强大社区支持和广泛应用。1)易于学习和使用,适合初学者。2)拥有庞大的开发者社区,资源丰富。3)广泛应用于WordPress、Drupal等平台。4)与Web服务器紧密集成,简化开发部署。

超越炒作:评估当今PHP的角色超越炒作:评估当今PHP的角色Apr 12, 2025 am 12:17 AM

PHP在现代编程中仍然是一个强大且广泛使用的工具,尤其在web开发领域。1)PHP易用且与数据库集成无缝,是许多开发者的首选。2)它支持动态内容生成和面向对象编程,适合快速创建和维护网站。3)PHP的性能可以通过缓存和优化数据库查询来提升,其广泛的社区和丰富生态系统使其在当今技术栈中仍具重要地位。

PHP中的弱参考是什么?什么时候有用?PHP中的弱参考是什么?什么时候有用?Apr 12, 2025 am 12:13 AM

在PHP中,弱引用是通过WeakReference类实现的,不会阻止垃圾回收器回收对象。弱引用适用于缓存系统和事件监听器等场景,需注意其不能保证对象存活,且垃圾回收可能延迟。

解释PHP中的__ Invoke Magic方法。解释PHP中的__ Invoke Magic方法。Apr 12, 2025 am 12:07 AM

\_\_invoke方法允许对象像函数一样被调用。1.定义\_\_invoke方法使对象可被调用。2.使用$obj(...)语法时,PHP会执行\_\_invoke方法。3.适用于日志记录和计算器等场景,提高代码灵活性和可读性。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),