-
PHP动态网页开发基础知识(2)——系统平台配置
普通类 -
- 支持
- 批判
- 提问
- 解释
- 补充
- 删除
-
-
默认段落标题(请修改)...
第一部分:PHP动态网页开发基础知识
在“开源软件的教育应用”课程当中,我们详细的讲解了Apache与PHP、mySQL软件在Linux系统平台下的安装,本课程当中我们主要讲解这三个软件在Windwos平台下的安装和配置。
软件下载站点:
PHP下载 http://windows.php.net/download/ 版本PHP(注意,下载V6,thread safe版本)
Apache http server下载:http://httpd.apache.org/ ,选择适合的windows版本。
Apache的下载和安装:
1、应用安装向导,可以自定义安装目录,完成Apache的安装
2、将Apache添加为windows系统服务,这样有利于Apache自启动维护。
Apache和PHP安装后需要修改软件的预定义配置文件
Apache需要修改:
c:\apache2\conf\httpd.conf文件
在#LoadModulessl_module modules/mod_ssl.so的下一行加上
LoadModulephp5_module "c:/php/php5apache2_2.dll"
PHPIniDir"c:/php"
AddTypeapplication/x-httpd-php .php
Apache安装并启动成功后,可以通过浏览器浏览localhost查看,如果运行正常,会出现:
PHP需要将php解压至指定目录中,在PHP目录下的php.ini-dist文件的文件名修改为php.ini,并修改以下配置参数:
extension_dir ="C:/php/ext"
MySQL的下载和安装:
MySQL安装完成后需要在PHP中启动加载Mysql的模块,否则起无法在PHP脚本中加载,此外,需要在系统中设定MySQL的自动启动方式。其需要修改php.ini文件,添加:
[PHP_MYSQL]
extension=php_mysql.dll
[PHP_MYSQLI]
extension=php_mysqli.dll
PHP 遵从大多数服务器系统中关于文件和目录权限的安全机制。这就使管理员可以控制哪些文件在文件系统内是可读的。必须特别注意的是全局的可读文件,并确保每一个有权限的用户对这些文件的读取动作都是安全的。
PHP 被设计为以用户级别来访问文件系统,所以完全有可能通过编写一段 PHP 代码来读取系统文件如 /etc/passwd,更改网络连接以及发送大量打印任务等等。因此必须确保 PHP 代码读取和写入的是合适的文件。
当 PHP 以 Apache 模块方式安装时,它将继承 Apache 用户(通常为“nobody”)的权限。这对安全和认证有一些影响。比如,如果用 PHP 来访问数据库,除非数据库有自己的访问控制,否则就要使“nobody”用户可以访问数据库。这意味着恶意的脚本在不用提供用户名和密码时就可能访问和修改数据库。一个 web Spider 也完全有可能偶然发现数据库的管理页面,并且删除所有的数据库。可以通过 Apache 认证来避免此问题,或者用 LDAP、.htaccess 等技术来设计自己的防问模型,并把这些代码作为 PHP 脚本的一部份。
初学者一个常犯的对安全性不利的错误就是让 Apache 拥有 root 权限,或者通过其它途径斌予 Apache 更强大的功能。 把 Apache 用户的权限提升为 root 是极度危险的做法,而且可能会危及到整个系统的安全。所以除非是安全专家,否则决不要考虑使用 su,chroot 或者以 root 权限运行。
为了对 PHP 有个了解,让我们来看一下一个最基本的PHP 脚本—— "Hello, World!"。“Hello,World!”可以说是Apache的“Public_HTML”目录下创建一个新的扩展名为php的文件,例如,Test.Php。该文件的内容为如下的几行代码。
<body bgcolor="white">
<strong>How to say "Hello, World!"</strong>
<?php echo "Hello, World!";?>
<br>
Simple, huh?
</body>
如早些时候所提到的,PHP 是嵌入在 HTML 中的。(可能您的文件几乎没有包含 HTML,但是通常这个文件是 PHP 与 HTML 的混合体。)这个页面嵌入了PHP语句仅仅是一个 "echo" 语句。如果检查 HTML 输出,就会注意到 PHP 的代码并没有出现在从服务器送到您 Web 浏览器的文件中。所有出现在 Web 页面中的 PHP 都会被处理并从页面中剥离;从 WEB 服务器返回给客户机的仅仅是纯 HTML 输出。
启动Apache,并且在浏览器输入:http://localhost/Test.php,你将会看到输出结果和内容。下面,我们来讲解一下页面内PHP代码的含义:
PHP 代码是以标记“<?php” 开始并以“ ?> ”结束的。这就告诉服务器在“<?php ”和 “?>” 之间的所有内容需要用 PHP 指令进行语法分析。当处理和服务您的文件时,客户机会收到普通的 HTML 文件。浏览您站点的人看不到任何一个的 PHP 指令,除非您犯了错误,服务器把这些 PHP 代码分割开而没有先处理它们。
最后要注意的是,每个 PHP 函数都封闭在圆括号内,并以分号结束,这和 C 或 Perl 相似。由于一个简单的印刷错误而遗漏一个结束的圆括号或分号,造成一些语法错误是很常见的,所以要确保检查代码。在象 Vim 或 Emacs 这样的编辑器(可以突出显示语法)中编写 PHP 是有助于消除此类错误。它使您能立刻捕捉到错误。
-
-
- 标签:
- 权限
- 文件
- 系统
- apache
- 代码
- 安全
- 动态网页
- 基础知识
- 安装
- 下载
- php
- 开发
- html
-
学习元评论 (0条)
聪明如你,不妨在这 发表你的看法与心得 ~