怎么搭建php服务器 (php服务器)

2023-03-19 19:14:05 指南信息 梁佰亿

php服务器搭建有两种方式

一种是linux+apache+mysql+php方式。

另外一种是windows+IIS+mysql+php方式。

还有一种方式,就是在windows模式下,用apache作为服务器。

这种情况。第一种配置较为复杂。而且一般作为服务器居多,个人电脑测试用,一般以windows为主。

所以下面的配置方式以windows7为例:

首先,你需要去下载php的原始文件,绿色版的,安装版的均可。

1.将下载的php压缩解压。得到如下的目录

2.添加IIS,windows7默认情况下是不安装IIS的。

打开控制面板-程序和功能-打开或关闭windows功能。安装好IIS后如下:

3,添加处理程序映射

请求路径设为*.php,模块选择fastCgiModule。在windows+IIS模式下。fastCGI模式比传统的isapi模式效率要高很多。

可执行文件选择刚才解压的目录。文件类型选择.exe,选择对应的文件即可。下面的名称可任意。

然后确定。重启IIS。服务器就好了。另外所谓的MYSQL。直接下载安装版的就行了。

php 服务器变量$_SERVER 服务器环境变量 $_ENV

PHP  $_SERVER 变量

$_SERVER 是一个包含诸如头信息(header)、路径(path)和脚本位置(script locations)的数组。它是 PHP 中一个超级全局变量,我们可以在 PHP 程序的任何地方直接访问它。

$_SERVER 包含着众多的信息,你可以尝试直接打印它:

print_r($_SERVER);

$_SERVER 数组元素

更多情况下,我们只需要 $_SERVER 数组中的某些元素(数组单元)。$_SERVER 数组包含的元素如下:

页面程序相关

$_SERVER[‘PHP_SELF’]:相对于网站根目录的路径及 PHP 程序名称,与 document root 相关。

$_SERVER[‘HTTP_REFERER’]:链接到当前页面的前一页面的 URL 地址。

$_SERVER[‘SCRIPT_NAME’]:相对于网站根目录的路径及 PHP 程序文件名称 。

$_SERVER[‘REQUEST_URI’]:访问此页面所需的 URI 。

$_SERVER[‘SCRIPT_FILENAME’]:当前运行 PHP 程序的绝对路径及文件名。

$_SERVER[‘PATH_TRANSLATED’]:当前 PHP 程序所在文件系统(不是文档根目录)的基本路径。

$_SERVER[‘QUERY_STRING’]:查询(query)的字符串(URL 中第一个问号 ? 之后的内容但不包括 # 后面的内容)。

$_SERVER[‘argv’]:传递给当前 PHP 程序的参数。

$_SERVER[‘argc’]:命令行模式下,包含传递给程序的命令行参数的个数。

$_SERVER[‘REQUEST_TIME’]:请求开始时的时间戳,从 PHP 5.1.0 起有效。

$_SERVER[‘REQUEST_METHOD’]:访问页面时的请求方法,例如:“GET”、“HEAD”,“POST”或“PUT”。

$_SERVER[‘HTTP_ACCEPT’]:当前请求的 Accept: 头信息的内容。

$_SERVER[‘HTTP_ACCEPT_CHARSET’]:当前请求的 Accept-Charset: 头信息的内容。例如:“iso-8859-1,*,utf-8”。

$_SERVER[‘HTTP_ACCEPT_ENCODING’]:当前请求的 Accept-Encoding: 头信息的内容。例如:“gzip”。

$_SERVER[‘HTTP_ACCEPT_LANGUAGE’]:当前请求的 Accept-Language: 头信息的内容。例如:“zh-cn”。

$_SERVER[‘HTTP_CONNECTION’]:当前请求的 Connection: 头信息的内容。例如:“Keep-Alive”。

$_SERVER[‘HTTP_HOST’]:当前请求的 Host: 头信息的内容。

$_SERVER[‘HTTPS’]:如果 PHP 程序是通过 HTTPS 协议被访问,则被设为一个非空的值。

$_SERVER[‘PHP_AUTH_DIGEST’]:当作为 Apache 模块运行时,进行 HTTP Digest 认证的过程中,此变量被设置成客户端发送的“Authorization”HTTP 头内容(以便作进一步的认证操作)。

$_SERVER[‘PHP_AUTH_USER’]:当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。

$_SERVER[‘PHP_AUTH_PW’]:当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。

$_SERVER[‘AUTH_TYPE’]:当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型。

服务器端相关

$_SERVER[‘DOCUMENT_ROOT’]:当前运行 PHP 程序所在的文档根目录,在服务器配置文件中定义。

$_SERVER[‘GATEWAY_INTERFACE’]:服务器使用的 CGI 规范的版本,例如:“CGI/1.1”。

$_SERVER[‘SERVER_ADDR’]:当前运行 PHP 程序所在的服务器的 IP 地址。

$_SERVER[‘SERVER_NAME’]:当前运行 PHP 程序所在的服务器的名称。

$_SERVER[‘SERVER_ADMIN’]:Apache 服务器配置文件中的 SERVER_ADMIN 参数。

$_SERVER[‘SERVER_PORT’]:服务器所使用的端口。如果使用 SSL 安全连接,则这个值为用户设置的 HTTP 端口。

$_SERVER[‘SERVER_SIGNATURE’]:包含服务器版本和虚拟主机名的字符串。

$_SERVER[‘SERVER_SOFTWARE’]:服务器标识的字串,在响应请求时的头信息中给出。

$_SERVER[‘SERVER_PROTOCOL’]:请求页面时通信协议的名称和版本,例如:“HTTP/1.0”。

其他杂项

$_SERVER[‘HTTP_USER_AGENT’]:当前请求的 User-Agent: 头信息的内容,该字符串表明了访问该页面的用户代理的信息。

$_SERVER[‘REMOTE_ADDR’]:正在浏览当前页面用户的 IP 地址。

$_SERVER[‘REMOTE_HOST’]:正在浏览当前页面用户的主机名。

$_SERVER[‘REMOTE_PORT’]:用户连接到服务器时所使用的端口。

注意,如果以命令行方式运行 PHP,上面列出的元素几乎没有有效的(或是没有任何实际意义的)。

PHP $_ENV 变量

$_ENV 是一个包含服务器端环境变量的数组。它是 PHP 中一个超级全局变量,我们可以在 PHP 程序的任何地方直接访问它。

$_ENV 只是被动的接受服务器端的环境变量并把它们转换为数组元素,你可以尝试直接打印它:

print_r($_ENV);

限于篇幅,在此不再列出打印的结果,且不同的服务器上,打印出的结果可能是完全不同的。

$_ENV 数组元素

$_ENV 数组中的元素(数组单元)随服务器环境不同而有较大差异,所以无法像 $_SERVER 那样列出完整的列表。以下是 $_ENV 数组包含的比较通用的元素:

$_SERVER[‘PATH’]:环境变量 PATH 路径。

$_SERVER[‘CLASSPATH’]:系统 CLASSPATH 路径。

$_SERVER[‘LIB’]:系统 LIB 库路径。

$_SERVER[‘INCLUDE’]:系统 Include 路径,注意与 PHP 的包含路径是不一样的。

$_SERVER[‘OS’]:操作系统类型。

$_SERVER[‘LANG’]:系统语言,如 en_US 或 zh_CN。

$_SERVER[‘PWD’]:当前工作目录。

$_SERVER[‘TEMP’]:系统 TEMP 路径。

$_SERVER[‘AP_PARENT_PID’]:当前进程 ID 号。

$_SERVER[‘NUMBER_OF_PROCESSORS’]:系统 CPU 数目。

$_ENV 为空的原因及解决办法

如果打印输出 $_ENV 为空,可以检查一下 php.ini 的配置:

variables_order = "EGPCS"

上述配置表示 PHP 接受的外部变量来源及顺序,EGPCS 是 Environment、Get、Post、Cookies 和 Server 的缩写。如果 variables_order 的配置中缺少 E ,则 PHP 无法接受环境变量,那么 $_ENV 也就为空了。

php中的服务器是什么意思?有什么作用?干什么的?

意思:一般指装有apachephpmysql这三种软件的服务器/电脑。

作用:能够进行PHP网站发布最基本的架构之一。

用处:能让PHP程序/网站运行。

PHP是一种用来制作动态网页的服务器端脚本语言。你通过PHP和HTML创建页面。当访问者打开网页时,服务器端便会处理 PHP 指令,然后把其处理结果送到访问者的浏览器上面,就好像 ASP 或者是 ColdFusion 一样。

然而,PHP 跟 ASP 或 ColdFusion 不一样的地方在于,它是跨平台的开放源代码。PHP 可以在 Windows NT 以及很多不同的 Unix 版本中执行,它也可以被编译为一个 Apache 模块,或者是一个CGI二进制文件。

如何配置php服务器

一、Apache安装

版本解释:openssl是表示带有openssl模块,利用openssl就可以给Apache配置SSL安全链接的,也就是使用https://方式进行访问。

nossl则表示不带OpenSSL模块,无 法用于SSL安全链接,在这里我们下载带OpenSSL的。

选择版本:apache_2.2.14-win32-x86-openssl-0.9.8k.msi

下载地址:

首先我们在D盘(盘符根据实际情况自己选择)新建一个目录,

并且命名为“WAMP”其意义为“Wdindows Apache Mysql PhpMyAdmin” 之后安装的一些内容,也都将安装在该目录下。

1.安装说明:

运行apache安装程序,方法非常简单,弹安装界面后一直“next”

接着会出现一个界面,需要填写3个内容,分别为:Network Domain、Server Name、Administrator’s Email Address 随便填写就好,不影响内容。

在下面还有2个选项,默认选择为80端口,第二个为8080端口,根据个人需求选择,一般为默认80端口。

我们继续安装,选择Custom(自定义安装)-“next”

其中有打着红X的组件,我们单击这个组件容,选择“This feature, and all subfeatures, will be installed on local hard drive.”,即“此部分,及下属子部分内容,全部安装在本地硬盘上”。-“next”

然后选择右下角的“change ”改变安装路径,安装到刚才建立的目录中“D:\WAMP\Apache\”-“next”

安装完毕后,电脑右下角会多出一个图标,双击打开,选择start或restart,能正常运行,至此安装完毕。

2.修改配置:

打开安装录下D:\WAMP\Apache\conf\httpd.conf 文件(修改配置文件时,不建议使用记事本,可能会对其造成影响,推荐使用Notepad++或其他编辑软件打开修改)

打开以后Ctrl+F查找所要修改的内容

在#LoadModule vhost_alias_module modules/mod_vhost_alias.so下添加:

LoadModule php5_module “D:/WAMP/PHP/php5apache2_2.dll”

PHPIniDir “D:/WAMP/PHP”

AddType application/x-httpd-php .php

AddType application/x-httpd-php .htm

AddType application/x-httpd-php .html

DocumentRoot “E:/WAMP/Apache/htdocs”

修改成(这里的路径和IIS中wwwroot目录一样,用于存放网页,自定义或不做修改默认):DocumentRoot “D:/WAMP/www”

修改成(自定义或不做修改默认):

DirectoryIndex index.html

修改成:DirectoryIndex index.php default.php index.html index.htm default.html default.htm

3.测试

在D:/WAMP/www目录下 建立个index.html页面

在浏览器中输入

如果能正常显示,Apache配置完毕,已经正常运行。

二、MySql安装

版本解释:The Essentials Package:不包含 embedded server and benchmark suite,有自动安装程序和配置向导,没有MySQL Documentation。

The Complete Package:包含 embedded server and benchmark suite,有自动安装程序和配置向导,有MySQL Documentation。

The Noinstall Archive:包含 embedded server and benchmark suite,没有自动安装程序和配置向导,有MySQL Documentation。

选择版本:mysql-essential-5.1.44-win32.msi

下载地址:

1.安装说明:

打开安装程序,单击“next”

选择custom,组件为默认选择,我们不做改动-“next”

路径设置为“D:\WAMP\Mysql”-“next”

安装好以后点击“finish”

跟着会出现一个配置向导-“next”

选择“Detailed Configuration(详细配置)”-“next”

这里有3个选项:

Developer Machine,将只用尽量少的内存;

Server Machine,将使用中等数量内存;

Dedicated MySQL Server Machine,这台服务器上面只跑mysql数据库,将占用全部的内存。

可以根据自己需求选择,这里我们选择第二种“Server Machine”-“next”

选择数据库用途,同样有3个选项:

Mutltifunctional Database多功能用途,将把数据库优化成很好的innodb存储类型和高效率的myisam存储类型;

Transactional Database Only只用于事务处理类型,最好的优化innodb,但同时也支持myisam;

Non-Transactional Databse Only非事务处理类型,适合于简单的应用,只有不支持事务的myisam类型是被支持的。

一般选择第一种多功能的,同样我们也是。-“next”

选择InnodDB的数据存放位置,一般默认就行,为了统一我填写了“WAMP/MySQL Datafiles”-“next”

选择mysql允许的最大连接数,第一种是最大20个连接并发数,第二种是最大500个并发连接数,最后一种是自定义,自己可以根据需求选择,我选择第二个-“next”

下面是选择数据库监听的端口,一般默认是3306,如果改成其他端口,以后连接数据库的时候都要记住修改的端口,否则不能连接mysql数据库,比较麻烦,这里不做修改,用mysq的默认端口:3306-“next”

这一步设置mysql的默认编码,我们选择第三个,并在Character Set菜单中,选择“gbk”编码-“next”

(注:如果要用原来数据库的数据,最好能确定原来数据库用的是什么编码,如果这里设置的编码和原来数据库数据的编码不一致,在使用的时候可能会出现乱码。)

这一步是是否要把mysql设置成windows的,一般选择设成服务,这样以后就可以通过服务中启动和关闭mysql数据库。下面的复选框也勾选上,这样,在cmd模式下,不必非到mysql的bin目录下执行命令。也就是把上下2个勾都打上,中间默认-“next”

这一步是设置mysql的超级用户密码,这个超级用户非常重要,对mysql拥有全部的权限,请设置好并牢记超级用户的密码,下面有个复选框是选择是否允许远程机器用root用户连接到你的mysql服务器上面,如果有这个需求,也请勾选。这里我们使用默认选择,在New root password和Confirm中输入密码。“next”

点击“execute”进行配置,稍微等待一会,圆点上的勾全部打上,就代表配置完毕。

2.修改配置:

打开D:\WAMP\MySQL\my.ini

设置datadir为D:/WAMP/MySQL/data/或你所要存放数据位置的目录即可。

三、PHP安装

版本解释:VC9 专门为IIS定值的脚本,使用Visual Studio 2008编译器编译,支持最新的微软组建,从而提高效率。

VC6 是为了其他WEB服务软件提供的脚本 如 Apache。

Thread Safe 现成安全,之星时会进行线程 安全检查,以防止有心要求就启动新线程(Thread)的CGI执行方式而耗尽系统资源。

Non Thread Safe是非线程安全,在执行时不进行线程(Thread)安全检查

选择版本:PHP5.3(5.3.1)中VC6 x86 Thread Safe下 ZIP下载

下载地址:

1.安装说明

由于我们下载的的是ZIP压缩包,只需要将文件解压到“D:\WAMP\PHP”目录下即可

2.修改配置

将E:\WAMP\PHP\php.ini-development 文件修改成php.ini

打开php.ini

; extension_dir = “ext”

修改成:extension_dir = “E:\WAMP\PHP\ext”

将947行下,这些文件前面的“;”去除

extension=php_curl.dll

extension=php_gd2.dll

extension=php_mbstring.dll

extension=php_mysql.dll

extension=php_mysqli.dll

extension=php_pdo_mysql.dll

extension=php_xmlrpc.dll

;date.timezone =

修改成(很多网站没提到这里要修改,默认为美国时间,如果不修改会报错):date.timezone = Asia/Shanghai

3.测试

重启Apache(修改过配置文件 必须重启Apache才会生效)

新建个index.php 页面,代码中输入,保存文件放到“D:\WMAP\www\”目录下

打开浏览器输入: 如果能正常显示,说明PHP配置完毕,可以查看该页面的PHP信息是否正确。

(注:在改文件中输入函数可输出大量的有关PHP当前状态的信息,如PHP版本,服务器信息和环境等。)

(注:)

接着我们测试下,是否能连接到Mysql

再新建个link.php,下代码中输入

$link=mysql_connect(“127.0.0.1″,”root”,”Mysql安装时填写的密码”);

if(!$link) echo “Mysql数据库连接失败!”;

else echo “Mysql数据库连接成功!”;

mysql_close();

?

也保存文件放到“D:\WMAP\www\”目录下

打开浏览器输入: 查看

四、PhpMyAdmin安装

版本解释:phpMyAdmin-3.2.5

选择版本:phpMyAdmin-3.2.5-all-languages.zip

下载地址:

1.安装说明

解压到D:\WAMP\phpMyAdmin

2.修改配置

打开D:\WAMP\phpMyAdmin\libraries\config.default.php

$cfg['PmaAbsoluteUri'] = ”;

修改成(填写访问phpMyAdmin的绝对URL):$cfg['PmaAbsoluteUri'] = ‘’;

$cfg['Servers'][$i]['host'] = ‘localhost’;

修改成(填写服务器地址,通常默认,不需要修改):$cfg['Servers'][$i]['host'] = ‘localhost’;

$cfg['Servers'][$i]['user'] = ‘root’;

修改成(填写Mysql用户名,这里我们默认):$cfg['Servers'][$i]['user'] = ‘root’;

$cfg['Servers'][$i]['password'] = ”;

修改成(填写Mysql密码):$cfg['Servers'][$i]['password'] = ‘Mysql PWD;

$cfg['Servers'][$i]['auth_type'] = ‘cookie’;

修改成(设置认证方法,安全因素考虑,填写成cookie):$cfg['Servers'][$i]['auth_type'] = ‘cookie’;

$cfg['blowfish_secret'] = ”;

修改成(设置短语密码,如果上面设置成cookie,那这里不能留空,不然登陆会提示错误):$cfg['blowfish_secret'] = ‘cookie’;

3.测试

打开浏览器输入: 访问和登陆

什么是PHP服务器?php不是语言吗?

PHP服务器是可以运行PHP程序的服务器,PHP是语言,这个语言的执行需要PHP软件,例如PHP.EXE。

下载的PHP包里面都是程序文件,各有各的作用,比如PHP.EXE可以控制台下运行PHP程序文件。

如果你不用UNIX服务器,不需要编译。

PATH不是必须的,可以不用设置。

php服务器(php服务器配置) 第1张

如何搭建PHP服务器

这个需要根据你服务器环境来说,如果是windows 就去下载WAMP 如果是Luni 就去下载LNMP就可以了都有封装包,但是基本上的搭建方式都大同小异,下面就以windows的搭建方法为例为你详细说明:

在windows下安装apache php mysql

从各官方网站下了APACHE2.050、PHP5、MYSQL4.0.20、PHPMYADMIN2.57

apache_2.0.50-win32-x86-no_ssl.msi

php-5.0.0-Win32.zip

mysql-4.0.20d-win.zip

phpMyAdmin-2.5.7.zip

系统 win2003 系统盘为: D盘

第一步: 安装apache 并配置支持PHP

点击安装文件apache_2.0.50-win32-x86-no_ssl.msi

将apache安装在 D:\apache2 目录(随自己喜好)下

将php-5.0.0-Win32.zip 里内容解压到 D:\php 里

找到 php目录里的 php.ini-dist 重命名为 php.ini 并拷到 windows目录里(win2k 里为winnt)

如我的php.ini是拷到 D:\windows目录

再将php目录里的 php5ts.dll,libmysql.dll 拷到 系统目录(system/system32) 如我的是D:\windows\system里

配置apache里的httpd.conf

打开 D:\Apache2\conf\httpd.conf 这个文件

找到 AddDefaultCharset ISO-8859-1 将其改为 AddDefaultCharset GB2312 (让默认语言编码为简体中文)

找到 DocumentRoot "D:/Apache2/htdocs" 将其改为你的WEB目录(可不改)如我的为 DocumentRoot "D:/website"

找到 DirectoryIndex index.html index.html.var 在后面加入 index.htm index.php

选择安装模式: 模块化模式安装 或 CGI模式安装 (选一样即可)

--------------模块化安装配置------------------------------------

找到 #LoadModule ssl_module modules/mod_ssl.so 这行,在此行后加入一行

LoadModule php5_module d:/php/php5apache2.dll

其中d:/php/php5apache2.dll 为你php目录中php5apache2.dll所在的位置

找到 AddType application/x-gzip .gz .tgz 这行,在此行后加入一行

AddType application/x-httpd-php .php

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

--------------CGI安装配置--------------------------------------

找到 AddType application/x-gzip .gz .tgz 这行,加入如下即可

ScriptAlias /php/ "d:/php/"

AddType application/x-httpd-php .php

Action application/x-httpd-php "/php/php-cgi.exe"

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

此时PHP环境基本已经配置成功

在WEB根目录(如我的D:\website)里建一个名为test.php的文件内容如下

? echo phpinfo(); ?

重新启动apache服务

用浏览器打开

如果可以看到php配置输出信息就OK了

发表评论: