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

相关文章

CentOS 7 YUM源配置错误的解决方法

《CentOS7YUM源配置错误的解决方法》在使用虚拟机安装CentOS7系统时,我们可能会遇到YUM源配置错误的问题,导致无法正常下载软件包,为了解决这个问题,我们可以替换YUM源... 目录一、备份原有的 YUM 源配置文件二、选择并配置新的 YUM 源三、清理旧的缓存并重建新的缓存四、验证 YUM 源

Windows 系统下 Nginx 的配置步骤详解

《Windows系统下Nginx的配置步骤详解》Nginx是一款功能强大的软件,在互联网领域有广泛应用,简单来说,它就像一个聪明的交通指挥员,能让网站运行得更高效、更稳定,:本文主要介绍W... 目录一、为什么要用 Nginx二、Windows 系统下 Nginx 的配置步骤1. 下载 Nginx2. 解压

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

windows系统上如何进行maven安装和配置方式

《windows系统上如何进行maven安装和配置方式》:本文主要介绍windows系统上如何进行maven安装和配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录1. Maven 简介2. maven的下载与安装2.1 下载 Maven2.2 Maven安装2.

Apache 高级配置实战之从连接保持到日志分析的完整指南

《Apache高级配置实战之从连接保持到日志分析的完整指南》本文带你从连接保持优化开始,一路走到访问控制和日志管理,最后用AWStats来分析网站数据,对Apache配置日志分析相关知识感兴趣的朋友... 目录Apache 高级配置实战:从连接保持到日志分析的完整指南前言 一、Apache 连接保持 - 性

MySQL 安装配置超完整教程

《MySQL安装配置超完整教程》MySQL是一款广泛使用的开源关系型数据库管理系统(RDBMS),由瑞典MySQLAB公司开发,目前属于Oracle公司旗下产品,:本文主要介绍MySQL安装配置... 目录一、mysql 简介二、下载 MySQL三、安装 MySQL四、配置环境变量五、配置 MySQL5.1

mybatis的mapper对应的xml写法及配置详解

《mybatis的mapper对应的xml写法及配置详解》这篇文章给大家介绍mybatis的mapper对应的xml写法及配置详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录前置mapper 对应 XML 基础配置mapper 对应 xml 复杂配置Mapper 中的相

Spring Security介绍及配置实现代码

《SpringSecurity介绍及配置实现代码》SpringSecurity是一个功能强大的Java安全框架,它提供了全面的安全认证(Authentication)和授权(Authorizatio... 目录简介Spring Security配置配置实现代码简介Spring Security是一个功能强

SpringCloud使用Nacos 配置中心实现配置自动刷新功能使用

《SpringCloud使用Nacos配置中心实现配置自动刷新功能使用》SpringCloud项目中使用Nacos作为配置中心可以方便开发及运维人员随时查看配置信息,及配置共享,并且Nacos支持配... 目录前言一、Nacos中集中配置方式?二、使用步骤1.使用$Value 注解2.使用@Configur

qtcreater配置opencv遇到的坑及实践记录

《qtcreater配置opencv遇到的坑及实践记录》我配置opencv不管是按照网上的教程还是deepseek发现都有些问题,下面是我的配置方法以及实践成功的心得,感兴趣的朋友跟随小编一起看看吧... 目录电脑环境下载环境变量配置qmake加入外部库测试配置我配置opencv不管是按照网上的教程还是de