licess 发表于 2011-8-18 17:08:57

升级到lnmpa后再apache里用.htaccess来设置

rujinyou 发表于 2012-3-17 18:20:15

为什么我设置404无效呢?

为什么我设置404无效呢?
我的代码
server
      {
                listen 80;
                server_name www.xxx.com xxx.com;
                index index.html index.htm index.php default.html default.htm default.php;
                root/home/wwwroot;
                error_page 404 = /404.html

                include wordpress.conf;
                location ~ .*\.(php|php5)?$
                        {
                              fastcgi_passunix:/tmp/php-cgi.sock;
                              fastcgi_index index.php;
                              include fcgi.conf;
                        }

                location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
                        {
                              expires      30d;
                        }

                location ~ .*\.(js|css)?$
                        {
                              expires      12h;
                        }

rujinyou 发表于 2012-3-17 18:22:57

回复 1# 的帖子

我把wordpress的伪静态去掉后还是不行

rujinyou 发表于 2012-3-17 18:29:47

回复 1# 的帖子

发现把 wp的静态规则删除后生效了
怎么可以同时做到wp静态及404生效呢?

kekemyth 发表于 2012-5-27 15:34:45

更改nginx.conf在http定义区域加入:
fastcgi_intercept_errors on; 请问这是linux命令吗?
怎么操作啊?

kekemyth 发表于 2012-5-27 17:35:31

我解决这个问题了

按照军哥的操作
1.创建自己的404.html页面
2.更改nginx.conf在http定义区域加入:
fastcgi_intercept_errors on;

这些都是linux的系统文件,找到文件路径、编辑、修改、保存就可以了,这两步一般都没问题。
3.更改nginx.conf或虚拟主机的域名.conf在server 区域加入:
error_page 404 /404.html;
【一般情况有两种情况:
       1、我想让我VPS下的所有虚拟主机显示同一个404页面,那么就需要
      2、我想要我的每个虚拟主机的404页面不一样,那么我们就需要在虚拟主机的域名.conf在(路径:/usr/local/nginx/conf/vhost )server 区域加入error_page 404 /404.html;打开编辑保存就是了】

4.测试nginx.conf正确性:
/usr/local/nginx/sbin/nginx -t

如果正确应该显示如下信息:
the configuration file /opt/nginx/conf/nginx.conf syntax is ok
configuration file /opt/nginx/conf/nginx.conf test is successful

5.重启nginx
kill -HUP`cat /opt/nginx/nginx.pid `
还有重启nginx命令还有 #/usr/local/nginx/sbin/nginx -s reload

[ 本帖最后由 kekemyth 于 2012-6-18 23:34 编辑 ]

hixinqin 发表于 2012-11-23 17:50:05

谢谢军哥,成功设置了

189lg.com 发表于 2013-10-17 04:13:04

404错误页面自定义不成功

我在nginx.conf文件

下一行添加
         tcp_nodelay on;



fastcgi_intercept_errors on;




然后WWW.XXX.com.conf域名配置文件里面添加


try_files $uri =404;
error_page 404 /404.html;


重启nginx
/usr/local/nginx/sbin/nginx -s reload




后还是没有效果,自定义404文件大小有11KB,求解是何原因



发个错误的页面测试无效:http://www.fffec.com/vod/zichaqiyua





汗,发完帖子后貌似可以了:lol,原来都是缓存惹的祸

[ 本帖最后由 189lg.com 于 2013-10-17 04:18 编辑 ]

puffbaby 发表于 2013-10-17 09:14:40

回复 7# 的帖子

error_page 404 = /404.html;

这里的等号一定要去掉
不然显示的是404页面,但是返回状态码确实200

puffbaby 发表于 2013-10-17 09:16:42

回复 1# 的帖子

军哥,一定要提醒大家 error_page 404 /404.html;这里不能加=等号的,不然返回码是200

lincs110 发表于 2015-4-29 14:47:53

不错啊 mark一下!!

phoenix2036 发表于 2015-7-13 15:43:16

lnmpa下404配置

需要在apache配置文件httpd.conf里加上:ErrorDocument 404 /404.html,
然后重启apache服务器就可以了: service httpd restart   或者   /usr/local/apache/bin/apachectl restart

mototown 发表于 2016-9-13 23:40:54

回复 27# 的帖子

我的lnmpa1.2所有错误页面都在   __ErrorFiles__文件夹下,ErrorDocument 404 /404.html是写在http.conf里,还是写在网站conf里,还有/404.html这个地方相对路径要怎么写,

mototown 发表于 2016-9-13 23:41:21

回复 16# 的帖子

我的lnmpa1.2所有错误页面都在   __ErrorFiles__文件夹下,ErrorDocument 404 /404.html是写在http.conf里,还是写在网站conf里,还有/404.html这个地方相对路径要怎么写,

licess 发表于 2016-9-14 08:53:24

回复 29# 的帖子

httpd.conf 里的话所有虚拟主机根目录下必须要有404.html ,对应虚拟主机或.htaccess 应该也可以 放网站根目录就行。
页: 1 [2]
查看完整版本: lnmp之nginx如何设置404错误页面