分类 Nginx 下的文章

nginx不带www到www域名的重定向

目的:实现xxoo.com/$ 301重定向到www.xxoo.com/$

第一步:xxoo.comwww.xxoo.com都解析到同一个IP,绑定到同一个目录上。

第二步:打开该文件的配置文件www.xxoo.com.conf

{
    listen       80;
    server_name  xxoo.com www.xxoo.com;
    index index.html index.php;
    root  /data/www/wwwroot;
    if ($http_host !~ "^www.xxoo.com$") {
        rewrite  ^(.*)    http://www.xxoo.com$1 permanent;
    }
    ........................
}

第三步:上传conf,重启nginx。

阅读剩余部分

nginx实现二级域名301重定向到对应顶级域名目录上

有一个网站,由于之前没规划好,把网站上的很多栏目做成了二级域名。比如:
mm.xxoo.com 对应的目录是 www.xxoo.com/mm/
gg.xxoo.com 对应的目录是 www.xxoo.com/gg/

由于运营思路调整,需要取消二级域名,那么此时不能唐突地直接去掉解析,改掉网站上的url,这样之前做的推广,发的外链效果就完全失效了,且造成网站大量死链。因此,唯一的方法是做301重定向。

在nginx下,找到mm.xxoo.com对应的conf配置文件,在配置文件里添加如下代码:

location ~* ^/(.*) {
    rewrite ^/(.*)$ http://www.xxoo.com/mm/$1 permanent;
} 

阅读剩余部分

nginx自动切割服务器日志

Web 访问日志 (access_log) 记录了所有外部客户端对Web服务器的访问行为,包含了客户端IP,访问日期,访问的URL资源,服务器返回的HTTP状态码等重要信息。
一条典型的Web访问日志如下:

112.97.37.90 - - [14/Sep/2013:14:37:39 +0800] "GET / HTTP/1.1" 301 5 "-" "Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; Lenovo A326 Build/GRK39F) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.1.259" -

当网站访问量大后,日志数据就会很多,如果全部写到一个日志文件中去,文件会变得越来越大。文件大速度就会慢下来,比如一个文件几百兆。写入日志的时候,会影响操作速度。另外,如果我想看看访问日志,一个几百兆的文件,下载下来打开也很慢。使用第三方免费的日志分析工具-日志宝,可以上传nginx、apache、iis的日志文件,它们帮助分析网站安全方面。毕竟专攻,更加专业。日志宝对上传的文件也是做了大小限制的,不超过50m。

阅读剩余部分

apache伪静态规则转成nginx伪静态规则

apache伪静态规则转成nginx伪静态规则-在线转换:http://www.anilcetin.com/

apache的 .htaccess文件里:

RewriteEngine onRewriteBase /后面跟伪静态规则 ...

nginx的xxxx.conf文件里:

server {
    伪静态规则放这里....
}

阅读剩余部分

打开nginx的目录浏览功能

Nginx在安装好之后,默认是禁止目录浏览的。禁止目录浏览时,页面显示什么取决于你的配置,更多的时候是返回403 Forbidden

1、开启全站所有目录浏览功能

编辑你那个网站对应的虚拟主机conf配置文件,在server{里面添加以下内容:

autoindex on; #开启nginx目录浏览功能
autoindex_exact_size off; #文件大小从KB开始显示 
autoindex_localtime on; #显示文件修改时间为服务器本地时间

然后保存退出,service nginx reload 重新加载nginx配置。

阅读剩余部分