1. 基本知识点
HTTP协议中几个状态码的含义:503 500 401 200 301 302。。。
1xx(临时响应)
表示临时响应并需要请求者继续执行操作的状态码。
2xx(成功)
表示成功处理了请求的状态码。
3xx(重定向)
要完成请求,需要进一步操作。通常,这些状态码用来重定向。Google 建议您在每次请求中使用重定向不要超过 5 次。您可以使用网站管理员工具查看一下 Googlebot 在抓取重定向网页时是否遇到问题。诊断下的
网络抓取页列出了由于重定向错误导致 Googlebot 无法抓取的网址。
这些状态码表示请求可能出错,妨碍了服务器的处理。
5xx(服务器错误)
这些状态码表示服务器在处理请求时发生内部错误。这些错误可能是服务器本身的错误,而不是请求出错。
2.Include require include_once require_once 的区别.
(1)include是包含,如果程序执行到这行没有找到文件会警告.但继续执行.include_once和include是一样的 只是如果包含的文件已经存在就不再包含.require是引用资源.如果资源文件没有找到.程序会致命错误并且终止执行.require_once的意思和require是一样的,只是会检验文件是否 已经被包含.
(2)require()语句会无条件地读取它所包含的文件的内容,而不管这些语句是否执行。所以如果你想按照不同的条件包含不同的文件,就必须使用include()语句。
(3)Include:包含并运行指定文件,当包含外部文件发生错误时,
系统给出警告,但整个php文件继续执行。require()会报错程序停止运行。
(4)include 和require 都可以包含远程文件 php.ini的allow_url_include=on的情况下(默认为off)。
(5)include_once 和require_once 是防止重复包含的 同一个文件只包含一次。
3.PHP/Mysql中几个版本的进化史,比如mysql4.0到4.1,
PHP 4.x到5.1的重大改进等等。
mysql4.0 4.1 5.0 5.1 6.0 对比
MySQL 4.0
MySQL 4.0是在2003年3月发布的,该版本使新的基于MySQL的应用程序获得了更广泛的应用。但是在4.0版中,MySQL不支持存储过程、触发程序、服 务器端指针或视图。MySQL 4.0是从3.23发展而来,较之3.23版本有了很大的提高,主要适用于Web站点,这时候的MySQL还不是一个企业级数据库。
以下是MySQL 4.0的主要新特性:
FULLTEXT索引:最值得用户期待的可能就是FULLTEXT索引。
FULLTEXT在文本字段创建索引,为对该索引执行布尔
搜索提供了一个强大而灵活的机制。依照一般的开发经验,开发人员通常必须创建索引并访问文本数据,而FULLTEXT索引比想象中的还要好得多。 许多解决
方案仅限于全字索引,FULLTEXT索引没有这种限制,允许开发人员添加或拆分词组。 ANSI SQL UNION:支持ANSI SQL UNION语句,该语句将询问结果汇集到一个结果集。 多表操作:可以执行多表UPDATE和DELETE。
新语句:增加了其他DBMS用户所熟悉的一些非标准的新语句(如IDENTITY和TRUNCATE TABLE),以及FOUND_ROWS()等新功能,这些功能可以返回无需LIMIT子句就能返回的纪录的编号。
InnoDB存储引擎:InnoDB存储引擎在当时作为服务器的标准特性,在4.0版本中成为一个附加选项。InnoDb是允许ACID兼容事务的表类型,而非默认的MyISAM表类型,它可以加快一般性使用的速度,但对于关键操作不是十分有用。
InnoDB表使用行级别锁定特性,这意味着对一个记录的更新只锁定该记录,而不是整个表。当选择访问大量的数据库时(对于大多数Web站点而言),锁 定整个表相当快,但是当插入和更新的数量接近于选项的数量时,则速度较慢。长期以来,对MySQL的批评一直集中在MyISAM表的安全性和一致
性
问题, 兼容ACID的InnoDB表在解决这些问题上走过了很长一段路。
查询缓存:MySQL 4.0在某些情况下可以更快捷。这主要通过查询缓存得以实现,它将重复的查询结果存储