PHP配置加强二

2024-05-31 10:58
文章标签 配置 php 加强

本文主要是介绍PHP配置加强二,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

运行原理--------服务器中的服务器软件和浏览器进行交互; 服务器本身有操作系统,上面装服务器软件,如Apache,tomcat,IIS等;PHP是运行在服务器端的脚本语言,PHP模块也放在服务器中,可以执行php代码;数据库也放在数据库中;Apache调用php------php调用数据库;

-------------------------------------

客户端技术:HTML,css,javascript;

服务器端技术:服务器软件,服务器语言,数据库;

apache安装后默认的主页站点位置在:apache/htdocs/

localhost    就代表本机服务器,

www.lambo.com---浏览器找到域名对应的IP,再去请求IP所代表的服务器,只有IP才能准确确定一台服务器(一台电脑)的准确位置;域名转换为IP的过程称为域名解析;互联网上有很多解析域名的服务器,叫DNS域名解析服务器;

操作系统文件可以设置重定向,解析域名-------Windows/system32/drivers/etc/hosts;

host s就是文件名,没有后缀,但是他是纯文本文件;他是系统文件,需要管理员身份才能修改;

---------------------------------



------------------命令行运行-----------------------

php 语言包无需安装,copy后只要放在合适的位置即可;

php模块中有一个可执行文件php.exe ,

php命令行(cmd)运行模式:方法1运行路径-----,路径/php.exe -f ”自己写的php文件路径''(注意php.exe文件的路径要加上,否则找不到)

方法2运行代码-----.路径/php.exe  -r "自己写的PHP代码"

-----------------------------------------------------------配置apache----在apache中配置PHP---------------------------------------

php只是apache的一个功能模块;需要自己配置

配置apache,----------初始安装apache后还不能运行php脚本代码,好需要对apache进行自定义配置,主配置文件位置:apache/conf/httpd.conf


如上图:

第一步:添加LoadModule php_module "php5的模块文件路径”(php路径/php5apache2_2.dll文件,Windows系统中正反斜杠都可以)--------表示装载php5模块文件

第二部:指定php后缀的文件应该调用该php模块去执行;-------

<FilesMatch "\.php$">

setHandler application/x-httpd-php

</FilesMatch >

\.php$-------表示所有php后缀的文件;

setHandler application/x-httpd-php----------------------表示该类由php模块执行,固定写法;


第二部还有一种方法:在 <ifModule mime_module>中添加   AddType  application/x-httpd-php .php .php3 .php


php其实也是作为apache的其中一个功能模块而已;无默认配置,需要自己配置;


配置了php模块后,还需要指定php.ini的位置;

--------------------------配置基本文件php.ini------需要吧下面图中的文件改成.ini结尾-----


图中的两个文件,根据开发和发布选择更改一个即可;


--------------------------在apache中指定php.ini的位置-----------------------



apache还不知道php配置文件的位置;需要在apache中设定php.ini的文件位置-------------PHPInDir "php.ini所在的文件夹路径”(只要设定文件夹就可以,路径中不包含php.ini这个文件本身


----------------------------------------------------------------------

配置时区------在配置文件中找到 date.timezone=PRC;



------------------------------------配置环境变量---------------------------

设置环境变量:就是将一些常用的目录位置加入到操作系统的path路径设置中去,我么通常可以加入以下的:

apache的bin目录:

mysql的bin目录:

设置环境变量后,文件的路径就可以省略了,直接使用文件;(在终端中使用mysql命令时,需要先配置环境变量)

计算机-----属性-----高级系统设置---------高级---环境变量-----系统变量-----path----编辑:添加上上述目录,用英文分号隔开;

--------------------------检测apache的语法问题---------------------------------------

检测apache配置文件的语法:

使用aache/bin目录中的httpd.exe -t

--------------------------php功能模块配置----------------------------------------

php内部是一个完整的语言包,里面有很多功能模块;

在php.ini中有很多扩展功能;可以打开或关闭;

--------------------打开数据库功能模块:---------------------

这两个只是开关:extension =php_mysql.dll

entension =php_mysqli.dll

还需要设置数据库模块的位置;

配置数据库连接机制

打开扩展模块:-------------设置数据库模块的位置(对比apache打开php的模块语法)

#extension_dir = "./"

#On windows

entrnsion_dir ="C:/it/wamp/php/ext"(该项指定php中的各个模块(包括数据库模块)实际存放位置------------所有模块位置统一指定)


-------------------------------------------------------------

php链接数据库的函数:$connc=mysql_connect("localhost","root","123");


--------------------------------------------------------------安装mysql数据库

MYSqll server ------------mysql的安装位置,推荐放在自定义的MYSQL文件夹中

server data files ----------------数据存放的位置,推荐选择自定义的MYSQL文件夹中;

配置数据库很复杂:


 选择custom------


选择detailonfig-------



next---





点击excute-----才-执行上面的配置;


------------------------------------------------------------------



如下图:apache只提供80端口服务,没有提供8080端口服务,如果用8080端口,就显示网页不存在;


apache设置支持多个端口服务:


apache的详细配置;


如果请球的是www.php34.com则在C://itcast/class/bj-php024/amp/apache/htdocs中找相对应的网页;

浏览器通过域名经过DNS解析找到服务器这台电脑,找到这台电脑后匹配端口,然后apache就提供服务;(域名对应的iP与系统的host文件中设置有关;决定能不能进入服务器的apache;)




apache的端口监听设置,是指设定Apache这个软件针对当前的服务器的那些端口提供web服务;apache的配置文件httpd.conf中的Listen 80(对80端口提供服务),可以设置多个端口号;

主机配置的关键项:虚拟主机/web站点-------------------可以通过浏览器,使用域名访问的web应用;

主机(站点)的名字:ServerName “主机名”

主机(站点)的路径:DocumentRoot “htdocs路径”


配置的方式添加文件夹的访问权限:

<Directory  "documentRoot的htdocs路径">

Option Indexes----------用于设定可显示文件列表(当无可显示网页的时候)

Order deny,allow--------------用于权限的判定顺序:先拒绝,后允许;

Deny from 192.168.0.1--------------拒绝这个IP的访问(只有在局域网中才有点意义)

allow from all---------------------允许所有IP访问

DirecoryIndex base.php------------设置默认网页--这里设置只对当前的路径有效

AllwOverride all--------允许.htccess文件发挥作用

</Directory>


可以设置默认网页给用户;形式如下:

<IfModule dir_module>

DirectoryIndex  index.html   ss.php---------------- 可以设置多个默认网页,这里设置是全局有效;依次寻找

</IfMdule>

对于指定要访问的明确网页的请求,会按照顺序一次往后寻找,如果都没有找到,就打开目录文件夹中的所有文件和文件夹

如下图:


-----------------------------------------------------

主机别名设置:ServerAlias  别名1 别名2 别名3.。。。。

一般有两种形式访问一个站点:1.http://www.bc.ccom      2.http://abc.com


目录别名设置:Alias  /soft   "真实的路径"--------------------------------目录别名可以将站点之外的网页/数据、内容放到当前站点中; 

一个站点就是一个文件夹,该文件夹中有其下一级文件夹目录,实际存在的下一级目录可以按照正常的文件夹访问层级关系进行访问,





----------------------------------------

文件夹访问控制的文件控制方式:

通常我们在config的配置文件中,使用directory配置项,目的是用来控制文件夹的访问权限,但我们也可以使用一个独立的文件来控制某文件夹的访问权限

该文件名必须是:   .htacces

注意:1.只有后缀和点号(无需文件名部分)

2.该文件必须放在要被控制访问权限的文件夹中(不同的文件夹可以放置不同的该文件)

3.其上级文件夹(通常是Directory中设定的文件夹)必须使用如下代码允许 htcces发挥作用:AllwOverride all;

4..htccess 文件中出现的代码几乎和Directory设定中出现的代码一样;

5.如果.htccess 的文件有效,则其设置会覆盖其上一级的设置;

6.   .htaccess文件修改后立即生效,无需重启apache;


-------------(配置多个虚拟主机)多站点配置-----------一个虚拟主机可以配置一个站点,也可以配置多个站点--------------

:1,httpd.conf中打开多站点配置  Include  conf/extra/httpd-vhosts.conf打开注释

2.htpd-vhosts中设置要进行多站点配置的IP和端口形式如下:

NameVirualHost  IP : 端口   

NameVirualHost  * : 80-----默认已经设置好了

*号代表当前服务器的所有IP(虚拟主机)地址;-----通常是一个IP;------------------一台服务器可以设置多个虚拟主机;

下面是配置一个站点,其他的站点同样;进行了多站点配置,httpd.conf中的配置就失效了

站点一:

<VirtualHost *:80>

ServerName www.php34.com-------主机

ServerAlias php34.com--------主机别名(用该别名也可以访问,但是域名要解析)

DocumentRoot "dddd"------根目录

<Directory "dddd">-----设置权限-------文件夹的路径要和上面的documentRoot的路径一致

Options Indexes

AllowOverride All

Order allow,deny

allow from all

deny from 192.163.2.33------决绝这个IP访问

DirectoryIndex  p1.php p2.php  ------默认网页

</Directory>

</VirtualHost>

----------------------------------

站点二:同上



---------------------------------------------------------

mysql客户端有多种:cmd命令行,PHP网页文件,navicate;

虚拟主机的配置:

总共有有6万多个端口,通常一台服务器只提供几个货十几个服务,

常用端口:

web服务:80

ftp:21

邮件收取服务:110;

邮件发送:25;

MYSQL数据库服务:3306

---------------------------------------------------------------------------


配置多个虚拟主机:

1.打开Apache的配置文件httpd.conf,并去掉#Include conf/extra/httpd-vhosts.conf前面的#!!

2.打开Apache的apache/conf/extra下的次配置文件httpd-vhosts.conf

3.将此文件下的原有的扩展配置文件(如下):删除一个或两个

复制代码
    <VirtualHost *:80>ServerAdmin webmaster@dummy-host2.localhostDocumentRoot /www/docs/dummy-host2.localhostServerName dummy-host2.localhostErrorLog logs/dummy-host2.localhost-error_logCustomLog logs/dummy-host2.localhost-access_log common</VirtualHost>
复制代码

4.在httpd-vhosts.conf文件的末尾添加上:

复制代码
  <VirtualHost *:80>DocumentRoot D:/wamp/website/a.comServerName www.a.com<Directory "D:/wamp/website/a.com">Options Indexes FollowSymLinksAllowOverride NoneOrder allow,denyAllow from all</Directory></VirtualHost>
复制代码

5.打开在C:/WINDOWS/system32/drivers/etc中的hosts文件中加上如下的内容

127.0.0.1    www.a.com

6.这样我们就配置好了名为wamp的虚拟主机,重启一下我们在浏览器中输入wamp就可以查看到D:/wamp/www目录下的内容了!!

7.但是这样localhost访问则出现了问题,这时需要我们,同样将localhost设为虚拟主机

复制代码
<VirtualHost *:80>DocumentRoot D:/wamp/wwwServerName localhost<Directory "D:/wamp/www">Options Indexes FollowSymLinksAllowOverride NoneOrder allow,denyAllow from all</Directory></VirtualHost>
复制代码

8.为了让其他电脑用IP访问电脑,需要在httpd.conf 中搜索127.0.0.1,修改为all





这篇关于PHP配置加强二的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1017782

相关文章

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Debian系和Redhat系防火墙配置方式

《Debian系和Redhat系防火墙配置方式》文章对比了Debian系UFW和Redhat系Firewalld防火墙的安装、启用禁用、端口管理、规则查看及注意事项,强调SSH端口需开放、规则持久化,... 目录Debian系UFW防火墙1. 安装2. 启用与禁用3. 基本命令4. 注意事项5. 示例配置R

PyCharm中配置PyQt的实现步骤

《PyCharm中配置PyQt的实现步骤》PyCharm是JetBrains推出的一款强大的PythonIDE,结合PyQt可以进行pythion高效开发桌面GUI应用程序,本文就来介绍一下PyCha... 目录1. 安装China编程PyQt1.PyQt 核心组件2. 基础 PyQt 应用程序结构3. 使用 Q

Redis MCP 安装与配置指南

《RedisMCP安装与配置指南》本文将详细介绍如何安装和配置RedisMCP,包括快速启动、源码安装、Docker安装、以及相关的配置参数和环境变量设置,感兴趣的朋友一起看看吧... 目录一、Redis MCP 简介二、安www.chinasem.cn装 Redis MCP 服务2.1 快速启动(推荐)2.

Spring Boot配置和使用两个数据源的实现步骤

《SpringBoot配置和使用两个数据源的实现步骤》本文详解SpringBoot配置双数据源方法,包含配置文件设置、Bean创建、事务管理器配置及@Qualifier注解使用,强调主数据源标记、代... 目录Spring Boot配置和使用两个数据源技术背景实现步骤1. 配置数据源信息2. 创建数据源Be

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于