简单配置Nginx前端处理静态文件,LiteSpeed后端处理动态文件

因为我用的LiteSpeed是免费版,连接数只有150的限制,虽然这150的链接也能应付日IP1W的 WordPress 的博客 ,但是网站的流量慢慢增加,不得不提准备,用Nginx 来跑静态文件,减少一些连接请求,何况用Nginx前端的话,负载能力都高点,速度应该也快点吧,所以,我又折腾起来了,然后做个简单记录,防止以后忘记啊,这个就不算什么教程了.
第一步,当然是安装LiteSpeed啦,请看这里:http://imcat.in/litespeed-mysql-php-install/

然后就是安装Nginx了

wget -c http://catlnmp.googlecode.com/files/pcre-8.01.tar.gz
tar zxvf pcre-8.01.tar.gz
cd pcre-8.01/
./configure
make && make install
cd ../



wget -c http://nginx.org/download/nginx-0.8.53.tar.gz
tar zxvf nginx-0.8.53.tar.gz
cd nginx-0.8.53/
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module
make && make install
cd ../

接着就是关键了,建立一个放网站配置文件的目录和创建配置文件:

mkdir -p /usr/local/nginx/conf/servers
rm -rf /usr/local/nginx/conf/nginx.conf
vi /usr/local/nginx/conf/nginx.conf

内容为:

user www www;
worker_processes 1;
error_log /usr/local/nginx/logs/nginx_error.log crit;
pid /usr/local/nginx/nginx.pid;
#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 1024;
events
{
use epoll;
worker_connections 1024;
}
http
{
include mime.types;
default_type application/octet-stream;
#charse gb2312;
server_names_hash_bucket_size 128;
client_header_buffer_size 128k;
large_client_header_buffers 4 256k;
client_max_body_size 16m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;

gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 9;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
output_buffers 4 32k;
postpone_output 1460;

#limit_zone crawler $binary_remote_addr 10m;
include servers/*;
}


vi /usr/local/nginx/conf/proxy.conf


proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 50m;
client_body_buffer_size 256k;
proxy_connect_timeout 30;
proxy_send_timeout 30;
proxy_read_timeout 60;

proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
proxy_max_temp_file_size 128m;

#Nginx cache
client_body_temp_path client_body 1 2;
proxy_temp_path proxy_temp 1 2;

#client_body_temp_path /tmpfs/client_body_temp 1 2;
#proxy_temp_path /tmpfs/proxy_temp 1 2;
#fastcgi_temp_path /tmpfs/fastcgi_temp 1 2;

最后就是站点配置文件:

vi /usr/local/nginx/conf/servers/imcat.conf


server
{
listen 80;
server_name imcat.in www.imcat.in *.imcat.in;
index index.html index.htm ;
root /home/www/imcat/;
include proxy.conf;

location / {
location ~ .*\.(php|php5)?$ {
index index.php;
root /home/www/imcat/;
proxy_pass http://127.0.0.1:8080; #这里的IP是你的LiteSpeed在Listeners 设置的IP和端口,一定要相同
}

if ( !-e $request_filename) {
proxy_pass http://127.0.0.1:8080; #这里的IP是你的LiteSpeed在Listeners 设置的IP和端口,一定要相同
}

location ~* \.(jpg|jpeg|gif|png|swf|htm|html)$ {
if (-f $request_filename) {
root /home/www/imcat/;
expires 30d;
break;
}
}
location ~* \.(js|css)$ {
if (-f $request_filename) {
root /home/www/imcat/;
expires 1d;
break;
}
}
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}

然后启动Nginx和LiteSpeed就OK了…
所有东西我都是自己Google来的,所以一些错误我还不会解决的,欢迎大家来交流经验啊…

33 Comments

Add a Comment
  1. 嗯 前端nginx 后端其他服务处理是最好的选择……..

    1. @久酷 对啊.因为我没有用过apache..所以就不会弄了,再加上apache没LiteSpeed的控制面板这么方便设置

  2. 今天考虑了一晚上,想弄个图片分流服务器。觉得最终还是nginx最好了,apache慢的一塌糊涂,lighttpd好长时间没有更新了(2个多月了,和nginx比比有点吓人的说,不敢用鸟),squid不能运行php写得传输图片的程序,╮(╯▽╰)╭。
    话说litspeed150并发貌似也不少,上次朋友被ddos,人家开了150个并发,他的2个PHP-CGI进程的nginx就挂了。。。。。。。。

    1. @小邪 图片?直接nginx+php-fpm就可以啊.虽然是php程序,但是,估计你的程序就上传图片是需要php吧,不是一直跑php,用php-fpm也可以了.

      1. @Cat. 对哈,我写个不需要数据库的程序 ·
        然后之安装个nginx+php就好啦,嘿嘿。。。

  3. 现在还用不到- -..就不深深的研究了..

  4. @Cat. apache安全把,和上次nginx 出现漏洞相比,虽然不全是nginx的问题,安全第一位,

    1. @junguo 噢,如果你说上次的PHP漏洞的话,现在这个方案是由LiteSpeed来跑PHP的.效率比apache高的..

      1. @Cat. 我的意思是要用一个安全点软件,上次就是应为NGINX的漏洞,服务器中木马,现在都不知道还有没有了,我日啊,那次事件对我影响深远,一句话,安全第一

  5. 猫昨天看到你发的那个统计 就想问你拉,都出教程拉,好呀 学学

  6. 没有折腾过vps,头大

  7. Nginx和LiteSpeed都弄好了,网站也正常跑
    但探针服务器解译引擎仍是 LiteSpeed
    怎么查看前端跑 nginx ?

    1. @kk 查看header信息http://tool.chinaz.com/Gzips/

  8. 老大 如果我先装的lnmp的话 还能再挂上litespeed么???????
    应该如何去设置呢………..

  9. cat 我鄙视你。又来诱惑我。我还才干学会apache 加个基本的mysql 的使用。你又来。我鄙视你。

    1. @top 目前这套配置,我用着很爽哦

  10. ./configure: error: SSL modules require the OpenSSL library.
    You can either do not enable the modules, or install the OpenSSL library
    into the system, or build the OpenSSL library statically from the source
    with nginx by using –with-openssl= option.

    编译nginx出现 这错误郁闷

  11. Cat.
    用这个搭建DZ X1.5的话,能支持多少日IP和PV?

  12. 收藏晚上尝试一下、咱菜鸟不知道能否搞定,如果有不懂的地方希望赐教、、 呵呵~

  13. 菜鸟请教下,如何启动Nginx和LiteSpeed

  14. 菜鸟装了,但不知道nginx怎么启动或重启?

  15. 菜鸟请教下,如何启动Nginx

    启动Nginx

    [root@8 ~]# /usr/local/nginx/sbin/nginx
    [emerg]: unknown directive “er” in /usr/local/nginx/conf/nginx.conf:1

    1. @mikj 配置文件有问题.检查/usr/local/nginx/conf/nginx.conf ,第一行应该是user www www;

  16. 我折腾是apache+nginx,用的 是DA面板

  17. 这样的话怎么新建站点?
    LiteSpeed和NGINX都要建是吗?
    具体步骤怎么搞?

  18. 我就费解了!
    为什么人人都感觉N钱A/L后好?
    为什么就不想着全用N,N跑动态也没什么问题!

  19. litespeed免费版不支持X64系统哦。郁闷。

  20. litespeed架设好了,怎么添加VHOST呢?有没有教程。

    还有开REWRITE的写法?

  21. 请问这样做好之后,安装wordpress不能打开首页,伪静态也弄不好,是什么原因呀?
    麻烦回复下.

Leave a Reply

Your email address will not be published. Required fields are marked *

猫言猫语 © 2007-2014 Frontier Theme