Home Backend Development PHP Tutorial Detailed explanation of the configuration of Apache and PHP

Detailed explanation of the configuration of Apache and PHP

Feb 23, 2018 am 10:01 AM
apache php explain

When we configure the PHP running environment, many beginners will choose to use phpstudy as the development environment tool. Let’s talk about the apache configuration and PHP configuration in phpstudy. Without further ado, let’s take a look at this article. Article!

Apache configuration details

Configuration file: httpd.conf

1. Basic configuration

##ServerRoot "D:/Apache" Apache installationDirectory

Listen 80 The port number that the server listens to

ServerName www.xxx.com:80 The main site name (the host name of the website)

ServerAdmin xxx@qq.com Administrator’s email address

DocumentRoot "D:/WWW" The root directory of the website

2. The following is the access control for the main site directory

##Options FollowSymLinks


AllowOverride None

Order allow,deny

Allow from all

Option details:

Options: Configure those properties to be used in a specific directory. Their values ​​and meanings are as follows


ExecCGI allows CGI to be executed in this directory Script


FollowSymLinks Allows the

file system

to use symbolic links in this directory

Indexs in When the user accesses the directory, if the homepage file (such as index.html) specified by DirectoryIndex cannot be found, the file list of the directory will be returned to the user

SymLinksIfOwnerMatch When using symbolic links, only Access can only be made if the owner of the symbolic link is the same as the owner of the file


AllowOverride: Allows the village to change with the directive in the .htaccess file (the file name of .htaccess can be changed, and its file name Determined by the AccessFileName directive)

None: When set to None, the .htaccess file in the server directory is not searched by default, which can reduce server overhead.

All: All can be used in the .htaccess file Instructions

Order: Control which of the two access rules Allow or deny takes precedence during access

All: List of hosts allowed to access

Deny: List of hosts denied access

DirectoryIndex: index.html index.htm index.php Default home page file

3. Virtual site configuration

Conditions: Include httpd-vhosts.conf in http.conf

# Virtual hosts
      Include conf/extra/httpd-vhosts.conf
Copy after login

Configure in httpd-vhost.conf

(1) IP-based virtual host

Modify the hosts file and add 3 domain names Correspondingly

192.168.1.11 www.test1.com
192.168.1.12 www.test2.com
192.168.1.13 www.test3.com
Copy after login

Establish the root directory where the virtual host stores files, such as

www/test1/1.html
www/test2/2.html
www/test3/3.html
Copy after login
Copy after login

Configure the following in 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>
Copy after login

(2) Based on the host name

Set domain name mapping to the same host


192.168.1.10 www.test1.com
192.168.1.10 www.test2.com
192.168.1.10 www.test3.com
Copy after login

Set the root directory for storing web pages

www/test1/1.html
www/test2/2.html
www/test3/3.html
Copy after login
Copy after login

When using a domain name-based virtual host, you must specify the server’s IP address and possible access ports to allow the host to accept Request can be configured using the NameVirtualHost directive. If all IPs on the server will be used, you can use * to indicate that the IP specified in NameVirtualHost will not allow the server to listen to this IP

Then configure

If you

configure a virtual host on an existing WEB server, you must also configure for the existing virtual host , the contents of ServerName and DocumentRoot should be consistent with the global contents, and should be placed at the front of the configuration file as the configuration of the default host

 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>
Copy after login

( 3) Based on port

修改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>
Copy after login

PHP 配置

配置文件:php.in

1. 模块加载:

extension = php_mysql.dll
Copy after login

2. 修改模块的目录

extension_dir = "D:/php/ext"
Copy after login

也可以将 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
Copy after login

4. register_globals = Off 设置是否开启全局变量

若设置为On

已GET/POST提交的参数,直接可以使用变量用调用, 建议不开启

5.设置时区:date.timezone =PRC

以上就是本篇文章的所有内容,希望对你的PHP学习提供到帮助!

相关文章:

Apache和PHP的配置

The above is the detailed content of Detailed explanation of the configuration of Apache and PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers Of The Witch Tree - How To Unlock The Grappling Hook
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Hot Topics

Java Tutorial
1665
14
PHP Tutorial
1269
29
C# Tutorial
1249
24
PHP and Python: Different Paradigms Explained PHP and Python: Different Paradigms Explained Apr 18, 2025 am 12:26 AM

PHP is mainly procedural programming, but also supports object-oriented programming (OOP); Python supports a variety of paradigms, including OOP, functional and procedural programming. PHP is suitable for web development, and Python is suitable for a variety of applications such as data analysis and machine learning.

Choosing Between PHP and Python: A Guide Choosing Between PHP and Python: A Guide Apr 18, 2025 am 12:24 AM

PHP is suitable for web development and rapid prototyping, and Python is suitable for data science and machine learning. 1.PHP is used for dynamic web development, with simple syntax and suitable for rapid development. 2. Python has concise syntax, is suitable for multiple fields, and has a strong library ecosystem.

PHP and Python: A Deep Dive into Their History PHP and Python: A Deep Dive into Their History Apr 18, 2025 am 12:25 AM

PHP originated in 1994 and was developed by RasmusLerdorf. It was originally used to track website visitors and gradually evolved into a server-side scripting language and was widely used in web development. Python was developed by Guidovan Rossum in the late 1980s and was first released in 1991. It emphasizes code readability and simplicity, and is suitable for scientific computing, data analysis and other fields.

PHP's Impact: Web Development and Beyond PHP's Impact: Web Development and Beyond Apr 18, 2025 am 12:10 AM

PHPhassignificantlyimpactedwebdevelopmentandextendsbeyondit.1)ItpowersmajorplatformslikeWordPressandexcelsindatabaseinteractions.2)PHP'sadaptabilityallowsittoscaleforlargeapplicationsusingframeworkslikeLaravel.3)Beyondweb,PHPisusedincommand-linescrip

The Continued Use of PHP: Reasons for Its Endurance The Continued Use of PHP: Reasons for Its Endurance Apr 19, 2025 am 12:23 AM

What’s still popular is the ease of use, flexibility and a strong ecosystem. 1) Ease of use and simple syntax make it the first choice for beginners. 2) Closely integrated with web development, excellent interaction with HTTP requests and database. 3) The huge ecosystem provides a wealth of tools and libraries. 4) Active community and open source nature adapts them to new needs and technology trends.

The Compatibility of IIS and PHP: A Deep Dive The Compatibility of IIS and PHP: A Deep Dive Apr 22, 2025 am 12:01 AM

IIS and PHP are compatible and are implemented through FastCGI. 1.IIS forwards the .php file request to the FastCGI module through the configuration file. 2. The FastCGI module starts the PHP process to process requests to improve performance and stability. 3. In actual applications, you need to pay attention to configuration details, error debugging and performance optimization.

What happens if session_start() is called multiple times? What happens if session_start() is called multiple times? Apr 25, 2025 am 12:06 AM

Multiple calls to session_start() will result in warning messages and possible data overwrites. 1) PHP will issue a warning, prompting that the session has been started. 2) It may cause unexpected overwriting of session data. 3) Use session_status() to check the session status to avoid repeated calls.

NGINX and Apache: Understanding the Key Differences NGINX and Apache: Understanding the Key Differences Apr 26, 2025 am 12:01 AM

NGINX and Apache each have their own advantages and disadvantages, and the choice should be based on specific needs. 1.NGINX is suitable for high concurrency scenarios because of its asynchronous non-blocking architecture. 2. Apache is suitable for low-concurrency scenarios that require complex configurations, because of its modular design.

See all articles