你是要搭什么服务器?这里分享个linux的web服务器搭建,大概步骤就是下载服务器软件,安装启动服务器,修改配置文件修改相关路径定义服务器属性测试,收工, Nginxweb服务器 1、下载nginx 命令:wgethttp:nginx。orgdownloadnginx0。8。54。tar。gz 2、解压 命令:tarzxvfnginx0。8。54。tar。gz 3、进入目录 命令:cdnginx0。8。54 4、安装依赖包 命令:yumyinstallgccpcredevelopensslopenssldevel(没有网络可在centos中找相关rpm) 5、执行。configure 命令:。configure 6、继续安装 命令: make 和 makeinstall 7、启动nginx服务 命令:usrlocalnginxsbinnginx 8、重启nginx服务 命令:usrlocalnginxsbinnginxsreload 9、修改站点的配置文件 命令:viusrlocalnginxconfnginx。conf 10、多站点设置 、在usrlocalnginxconf下创建vhost目录 命令:mkdirusrlocalnginxconfvhost 、在usrlocalnginxconfvhost里创建一个名字为linlik。conf的文件,把站点配置文件写入(请查看最下面的站点内容) 命令:viusrlocalnginxconfvhostlinlik。conf 、打开usrlocalnginxconfnginx。conf文件,在相应位置加入include把以上2个文件包含进来 在页尾后括号上面加入一句:includevhost。然后保存退出并重启nginx服务 11、多站点的站点配置文档内容 如下: server { listen80; listen〔::〕:80; servernamejiahaolin。comwww。111cn。 indexindex。htmlindex。htmindex。phpdefault。htmldefault。htmdefault。 includeemlog。 errorpage404404。 location〔〕。php() { commenttryfilesuri404;toenablepathinfo tryfilesuri404; fastcgipassunix:tmpphpcgi。 fastcgiindexindex。 includefastcgi。 includepathinfo。 } location。。(gifjpgjpegpngbmpswf) { expires30d; } location。。(jscss)? { expires12h; } accessloghomewwwlogsjiahaolin。com。 } NGINX下如何自定义404页面 IIS和APACHE下自定义404页面的经验介绍文章已经非常多了,NGINX的目前还比较少,为了解决自家的问题特地对此作了深入的研究。研究结果表明,NGINX下配置自定义的404页面是可行的,而且很简单,只需如下几步: 1。创建自己的404。html页面 2。更改nginx。conf在http定义区域加入: 3。更改nginx。conf(或单独网站配置文件,例如在nginxsitesenabled下的站点配置文件) 中在server区域加入:errorpage404404。html或者errorpage404http:www。xxx。com404。html 4。更改后重启nginx,,测试nginx。conf正确性:optnginxsbinnginxt 502等错误可以用同样的方法来配置。 errorpage50050250350450x。 注意事项: 1。必须要添加: 如果这个选项没有设置,即使创建了404。html和配置了errorpage也没有效果。fastcgiintercepterrors语法: fastcgiintercepterrorsonoff默认:fastcgiintercepterrorsoff添加位置: http,server,location 默认情况下,nginx不支持自定义404错误页面,只有这个指令被设置为on,nginx才支持将404错误重定向。这里需要注意的是,并不是说设置了fastcgiintercepterrors on,nginx就会将404错误重定向。在nginx中404错误重定向生效的前提是设置了fastcgiintercepterrors on,并且正确的设置了errorpage这个选项(包括语法和对应的404页面) 2。不要出于省事或者提高首页权重的目的将首页指定为404错误页面,也不要用其它方法跳转到首页。 3。自定义的404页面必须大于512字节,否则可能会出现IE默认的404页面。例如,假设自定义了404。html,大小只有11个字节(内容为:404错误)。 Nginx配置安装以及一些常遇到的错误 nginx编译安装一、安装nginx时必须先安装相应的编译工具 yumyinstallgccgcccautoconfautomake yumyinstallzlibzlibdevelopensslopenssldevelpcredevel 建立nginx组 groupaddrnginx useraddssbinnologingnginxrnginx idnginx zlib:nginx提供gzip模块,需要zlib库支持 openssl:nginx提供ssl功能 pcre:支持地址重写rewrite功能 Nginx官网下载地址:http:nginx。org最新版http:nginx。orgdownloadnginx1。5。2。tar。gz 二、tarzxvfnginx1。2。8。tar。gz 三、cdnginx1。2。8 配置 四、。configure prefixusr sbinpathusrsbinnginx confpathetcnginxnginx。conf errorlogpathvarlognginxerror。log pidpathvarrunnginxnginx。pid usernginx groupnginx withhttpsslmodule withhttpflvmodule withhttpgzipstaticmodule httplogpathvarlognginxaccess。log httpclientbodytemppathvartmpnginxclient httpproxytemppathvartmpnginxproxy httpfastcgitemppathvartmpnginxfcgi withhttpstubstatusmodule 或者使用默认的直接。configure 编译并且安装 五、makemakeinstall 编译完成后makeinstall进行安装安转后就大功告成拉 小结:centos没有安装make编译器 解决:yumyinstallgccautomakeautoconflibtoolmake 重启动命令usrlocalnginxsbinnginxcusrlocalnginxconfnginx。conf更多参考nginxhelp nginx的配置以及常见小问题如下: nginx:〔emerg〕bind()to0。0。0。0:80failed(98:Addressalreadyinuse)错误解决 nginx:〔emerg〕bind()to0。0。0。0:80failed(98:Addressalreadyinuse) nginx:〔emerg〕bind()to0。0。0。0:80failed(98:Addressalreadyinuse) nginx:〔emerg〕bind()to0。0。0。0:80failed(98:Addressalreadyinuse) nginx:〔emerg〕bind()to0。0。0。0:80failed(98:Addressalreadyinuse) nginx:〔emerg〕stillcouldnotbind() 问题描述:地址已被使用。可能nginx服务卡死了,导致端口占用,出现此错误。 解决方法:首先用lsof:80看下80端口被什么程序占用。lsof返回结果如下: COMMANDPIDUSERFDTYPEDEVICESIZEOFFNODENAME nginx3274root6uIPv4106640t0TCP:http(LISTEN) nginx3547nginx6uIPv4106640t0TCP:http(LISTEN) 发现是nginx程序,所以我们把nginx服务k掉,重新启动服务。。命令如下: kill93274 kill93547 或者killall9nginx 从新载入配置文件启动usrlocalnginxsbinnginxcusrlocalnginxconfnginx。conf 启动成功了但是发现一个错误信息 〔warn〕:51200workerconnectionsaremorethanopenfileresourcelimit:51200 虽然不是致命的问题不影响nginx运行但是看起来很烦人我们来解决一下 nginx。conf配置问题 events{ workerconnections51200;这里出的问题 } 问题原因是Linux的最大文件数限制。修改Linux文件数限制ulimitn51200 〔rootlocalhost〕ulimitn 〔rootlocalhost〕 接下来从新载入配置文件重启动Ok了。。。。 nginxerrorlog错误日志配置说明 nginx的errorlog类型如下(从左到右:debug最详细crit最少): 〔debuginfonoticewarnerrorcrit〕 例如:errorloglogsnginxerror。 解释:日志文件存储在nginx安装目录下的logsnginxerror。log,错误类型为crit,也就是记录最少错误信息; 注意errorlogoff并不能关闭日志记录功能,它将日志文件写入一个文件名为off的文件中,如果你想关闭错误日志记录功能,应使用以下配置: 把存储位置设置到Linux的黑洞中去 同样注意0。7。53版本,nginx在读取配置文件指定的错误日志路径前将使用编译的默认日志位置,如果运行nginx的用户对该位置没有写入权限,nginx将输出如下错误: 〔alert〕:couldnotopenerrorlogfile:open() varlognginxerror。logfailed(13:Permissiondenied)lognotfound 语法:lognotfoundonoff 默认值:on 使用字段:location 这个参数指定了是否记录客户端的请求出现404错误的日志,通常用于不存在的robots。txt和favicon。ico文件,例如:locationrobots。txt{} 最后:所有nginx配置发生改变时,最好都使用如下命令测试配置是否错误后再使用sreload重载 usrlocalnginxsbinnginxt 说明: 1、代表root权限,不用输入 2、以上是nginx的默认安装路径,如果改变了要相应的修改哦,例如wdcp的lanmp一键安装包则如需要用如下命令 wwwwdlinuxnginxsbinnginxsreload 输入后如果提示如下,则表示配置无误: nginx:theconfigurationfileusrlocalnginxconfnginx。confsyntaxisok nginx:configurationfileusrlocalnginxconfnginx。conftestissuccessful 这时再使用重载命令让Nginx平滑的重新加载配置即可,而不会影响正常访问: usrlocalnginxsbinnginxsreload