你打算建什么服务器?下面是如何构建一个linux web服务器。一般步骤是下载服务器软件,安装-启动服务器,修改配置文件-修改相关路径-定义服务器属性-测试并收工。
Nginx web服务器
1.下载nginx
命令:wget http://nginx.org/download/nginx-0.8.54.tar.gz
2.使减压
指挥官:塔尔·zxvf·nginx-0.8.54.tar.gz
3.输入目录。
命令:cd nginx-0.8.54
4.安装依赖包。
命令:yum-y install gcc pcre-devel OpenSSL OpenSSL-devel(centos中找不到相关rpm的网络)
5.执行。/配置
命令:。/配置
6.继续安装。
命令:
制造
和
进行安装
7.启动nginx服务。
命令:/usr/local/nginx/sbin/nginx
8.重新启动nginx服务
命令:/usr/local/nginx/sbin/nginx-s reload
9.修改站点的配置文件。
命令:VI/usr/local/nginx/conf/nginx . conf
10.多站点设置
(1)、在/usr/local/nginx/conf/下创建vhost目录
命令:mkdir/usr/local/nginx/conf/vhost
⑵在/usr/local/nginx/conf/vhost中创建一个名为linlik.conf的文件,并编写站点配置文件(请在底部查看站点内容)
命令:VI/usr/local/nginx/conf/vhost/linlik . conf
(3)打开文件/usr/local/nginx/conf/nginx . conf,在相应位置添加include,将上述两个文件包含进来。
在页末括号上方加一句:包含vhost/*。conf然后保存,退出并重启nginx服务。
11.多站点站点配置文档的内容。
如下所示:
计算机网络服务器
{
听80;
# listen[::]:80;
jiahaolin.com·www.111cn.net;
索引index.html index.htm index.php default.html default.htm default.php;
root/www/林嘉豪;
包含em log . conf;
# error _ page 404/404 . html;
地点~【^/]\.php(/|$)
{
# comment try _ files $ uri = 404要启用pathinfo
try _ files $ uri = 404
fastcgi _ pass UNIX:/tmp/PHP-CGI . sock;
fastcgi _ index index.php;
包括fastcgi.conf
# include pathinfo.conf
}
位置~。*\.(gif|jpg|jpeg|png|bmp|swf)$
{
过期30d
}
位置~。*\.(js|css)?$
{
到期12小时;
}
access _ log/home/wwwlogs/jiahaolin . com . log访问;
}
如何在NGINX下定制404页面
关于在IIS和APACHE下定制404页面的体验的文章已经很多了,但是关于NGINX的文章还是很少。为了解决自身的问题,我们对此进行了深入的研究。研究结果表明,在NGINX下配置自定义404页面是可行且简单的,只需要以下步骤:
1.创建自己的404.html页面。
2.更改nginx.conf,在http定义区添加:fastcgi _ intercept _ errors on
3.更改nginx.conf(或一个单独的网站配置文件,例如在nginx->:sites-enabled下的站点配置文件中)
在服务器区域添加:error_page 404 /404.html或error _ page 404 = http://www.xxx.com/404.html。
4.更改后重启nginx,测试nginx . conf:/opt/nginx/sbin/nginx–t的正确性
像#502这样的错误可以用同样的方式配置。
error _ page 500 502 503 504/50x . html;
注意事项:
1.您必须添加:fastcgi _ intercept _ errors on
如果未设置此选项,即使创建了404.html并配置了error_page,也不会有任何效果。fastcgi_intercept_errors语法:
Fastcgi_intercept_errors on|off默认值:fastcgi_intercept_errors off添加位置:
http,服务器,位置
默认情况下,nginx不支持自定义404错误页面。只有当这个指令设置为on时,nginx才支持404错误的重定向。这里需要注意的是,这并不意味着fastcgi_intercept_errors被设置。
上,nginx将重定向404错误。nginx中,404错误重定向的前提是设置了fastcgi_intercept_errors。
上,并正确设置error_page选项(包括语法和相应的404页面)
2.不要为了省事或者增加首页权重而指定首页为404错误页,也不要通过其他方法跳转到首页。
3.自定义404页面必须大于512字节,否则可能会出现IE默认404页面。例如,假设您定制了一个大小仅为11字节的404.html(内容:404错误)。
Nginx配置安装和一些常见错误
Ngx编译和安装1。安装nginx时,必须先安装相应的编译工具。
yum -y安装gcc gcc-c++ autoconf automake
yum -y安装zlib zlib-devel OpenSSL OpenSSL-devel pcre-devel
建立nginx集团
groupadd -r nginx
useradd-s/sbin/nologin-g nginx-r nginx
id nginx
Zlib:nginx提供gzip模块,需要Zlib库的支持。
Openssl:nginx提供ssl函数。
Pcre:支持地址重写的重写功能。
Nginx官网下载地址:http://nginx.org/最新版http://nginx.org/download/nginx-1.5.2.tar.gz
二。塔尔-ZXVF nginx-1.2.8.tar.gz
三。cd nginx-1.2.8
部署
静脉的../配置\
- prefix=/usr \
- sbin-path=/usr/sbin/nginx \
-conf-path =/etc/nginx/nginx . conf \
-error-log-path =/var/log/nginx/error . log \
-PID-path =/var/run/nginx/nginx . PID \
- user=nginx \
- group=nginx \
- with-http_ssl_module \
- with-http_flv_module \
- with-http_gzip_static_module \
-http-log-path =/var/log/nginx/access . log \
-http-client-body-temp-path =/var/tmp/nginx/client \
-http-proxy-temp-path =/var/tmp/nginx/proxy \
-http-fastcgi-temp-path =/var/tmp/nginx/fcgi \
- with-http_stub_status_module
或者使用默认的直接。/configure。
编译并安装。
动词 (verb的缩写)制作并制作安装
编译完成后,make install会安装它,然后就大功告成了。
摘要:centos没有安装make编译器。
解决方案:yum-y安装gcc automake autoconf libtool make
重新启动命令/usr/local/nginx/sbin/nginx-c/usr/local/nginx/conf/nginx . conf更多信息请参考nginx - help。
nginx的配置和常见小问题如下:
inx的错误解析:[emerg] bind()到0.0.0.0: 80失败(98:地址已在使用中)
nginx: [emerg]将()绑定到0.0.0.0:80失败(98:地址已在使用中)
nginx: [emerg]将()绑定到0.0.0.0:80失败(98:地址已在使用中)
nginx: [emerg]将()绑定到0.0.0.0:80失败(98:地址已在使用中)
nginx: [emerg]将()绑定到0.0.0.0:80失败(98:地址已在使用中)
nginx:[紧急]仍然无法绑定()
问题描述:该地址已被使用。可能是nginx服务卡死了,导致端口被占用,出现这个错误。
解决方法:首先用lsof:80看看是什么程序占用了80端口。Lsof返回以下结果:
命令PID用户FD类型设备大小/脱离节点名称
nginx 3274 root 6u IP v4 10664 0t 0 TCP *:http(监听)
nginx 3547 nginx 6u IP v4 10664 0t 0 TCP *:http(LISTEN)
我们发现了nginx程序,于是我们放弃了nginx服务,重新启动了服务。。该命令如下所示:
kill -9 3274
kill -9 3547
或者killall -9 nginx
从新加载的配置文件启动/usr/local/nginx/sbin/nginx-c/usr/local/nginx/conf/nginx . conf。
它成功启动,但发现一条错误消息。
[警告]: 51200 worker_connections超过了打开文件资源限制:51200
虽然不是不影响nginx运行的致命问题,但是看起来很烦。让我们来解决它。
Nginx.conf配置问题
事件{
使用epoll
工人_连接51200;//这里的问题
}
原因是Linux中文件的最大数量。修改Linux文件号限制ulimit -n 51200
[root@localhost ~]# ulimit -n
[root@localhost ~]#
接下来,重新加载配置文件并重启Ok。....
Ngxerror _ log错误日志配置描述
nginx的error_log类型如下(从左到右:debug最详细,crit最少):
[调试|信息|通知|警告|错误|关键]
示例:error _ log logs/nginx _ error . log crit;
说明:日志文件存储在nginx安装目录下的logs/nginx_error.log中,错误类型为crit,即记录最少的错误信息;
注意error_log off不能关闭日志功能。它将日志文件写入名为off的文件中。如果您想关闭错误记录功能,您应该使用以下配置:
error_log /dev/null标准;
将存储位置设置为Linux的黑洞。
还要注意0.7.53版,nginx在读取配置文件中指定的错误日志路径之前,会使用编译后的默认日志位置。如果运行nginx的用户没有该位置的写权限,nginx将输出以下错误:
[警报]:无法打开错误日志文件:打开()
"/var/log/nginx/error.log "失败(13:权限被拒绝)log_not_found
语法:log_not_found on | off
默认值:开
使用字段:位置
此参数指定是否记录客户端请求的404错误日志。通常用于不存在的robots.txt和favicon.ico文件,例如:location =/robots . txt { log _ not _ found off;}
最后,当所有nginx配置发生变化时,最好使用以下命令测试配置是否错误,然后使用-s reload重载。
#/usr/local/nginx/sbin/nginx–t
描述:
1.#代表root权限,所以不需要输入。
2.以上是nginx的默认安装路径。如果改变了,就要做相应的修改。例如,如果需要,wdcp的lanmp一键式安装包应该使用以下命令
#/www/wd Linux/nginx/sbin/nginx-s重新加载
输入后,如果出现如下提示,说明配置正确:
nginx:配置文件/usr/local/nginx/conf/nginx . conf语法没问题
nginx:配置文件/usr/local/nginx/conf/nginx . conf测试成功
此时,只需使用reload命令,让Nginx在不影响正常访问的情况下,顺利重新加载配置即可:
# /usr/local/nginx/sbin/nginx -s重新加载