下载 nginx
- cd /usr/local/src
- wget http://nginx.org/download/nginx-1.12.1.tar.gz
解压
tar zxf nginx-1.12.1.tar.gz
编译
- ./configure --prefix=/usr/local/nginx
- make && make install
做一个 nginx 启动脚本
vim /etc/init.d/nginx
- #!/bin/bash
- # chkconfig: - 30 21
- # description: http service.
- # Source Function Library
- . /etc/init.d/functions
- # Nginx Settings
- NGINX_SBIN="/usr/local/nginx/sbin/nginx"
- NGINX_CONF="/usr/local/nginx/conf/nginx.conf"
- NGINX_PID="/usr/local/nginx/logs/nginx.pid"
- RETVAL=0
- prog="Nginx"
- start() {
- echo -n $"Starting $prog:"
- mkdir -p /dev/shm/nginx_temp
- daemon $NGINX_SBIN -c $NGINX_CONF
- RETVAL=$?
- echo
- return $RETVAL
- }
- stop() {
- echo -n $"Stopping $prog:"
- killproc -p $NGINX_PID $NGINX_SBIN -TERM
- rm -rf /dev/shm/nginx_temp
- RETVAL=$?
- echo
- return $RETVAL
- }
- reload(){
- echo -n $"Reloading $prog:"
- killproc -p $NGINX_PID $NGINX_SBIN -HUP
- RETVAL=$?
- echo
- return $RETVAL
- }
- restart(){
- stop
- start
- }
- configtest(){
- $NGINX_SBIN -c $NGINX_CONF -t
- return 0
- }
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- reload)
- reload
- ;;
- restart)
- restart
- ;;
- configtest)
- configtest
- ;;
- *)
- echo $"Usage: $0 {start|stop|reload|restart|configtest}"
- RETVAL=1
- esac
- exit $RETVAL
给 755 权限并加入开机启动
- chmod 755 /etc/init.d/nginx
- chkconfig --add nginx
- chkconfig nginx on
编辑 nginx 配置文件
- cd /usr/local/nginx/conf/
- mv nginx.conf nginx.conf.bak
- vim nginx.conf
- user nobody nobody;
- worker_processes 2;
- error_log /usr/local/nginx/logs/nginx_error.log crit;
- pid /usr/local/nginx/logs/nginx.pid;
- worker_rlimit_nofile 51200;
- events
- {
- use epoll;
- worker_connections 6000;
- }
- http
- {
- include mime.types;
- default_type application/octet-stream;
- server_names_hash_bucket_size 3526;
- server_names_hash_max_size 4096;
- log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'
- '$host"$request_uri"$status'
- '"$http_referer" "$http_user_agent"';
- sendfile on;
- tcp_nopush on;
- keepalive_timeout 30;
- client_header_timeout 3m;
- client_body_timeout 3m;
- send_timeout 3m;
- connection_pool_size 256;
- client_header_buffer_size 1k;
- large_client_header_buffers 8 4k;
- request_pool_size 4k;
- output_buffers 4 32k;
- postpone_output 1460;
- client_max_body_size 10m;
- client_body_buffer_size 256k;
- client_body_temp_path /usr/local/nginx/client_body_temp;
- proxy_temp_path /usr/local/nginx/proxy_temp;
- fastcgi_temp_path /usr/local/nginx/fastcgi_temp;
- fastcgi_intercept_errors on;
- tcp_nodelay on;
- gzip on;
- gzip_min_length 1k;
- gzip_buffers 4 8k;
- gzip_comp_level 5;
- gzip_http_version 1.1;
- gzip_types text/plain application/x-javascript text/CSS text/htm application/xml;
- server
- {
- listen 80;
- server_name localhost;
- index index.html index.htm index.php;
- root /usr/local/nginx/html;
- location ~ \.php$
- {
- include fastcgi_params;
- fastcgi_pass unix:/tmp/php-fcgi.sock;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
- }
- }
- }
检查有没有错误
/usr/local/nginx/sbin/nginx -t
启动
/etc/init.d/nginx start
监听端口
netstat -lntp |grep 80
启动报错
错误
Restarting nginx (via systemctl): Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
解决办法:
原因是这一句写分开了
gzip_types text/plain application/x-javascript text/css text/htm
application/xml;
curl 测试
curl localhost
// 这个页面就是 server 里面定义的网站根目录下 / usr/local/nginx/html 的 index.php 文件
来源: http://www.bubuko.com/infodetail-2563880.html