小编Dan*_* W.的帖子

检查Apache是​​否加载了特定的配置?

有很多配置文件,我放了一个文件,但我没有看到它的效果。

要么我的配置是错误的,要么 Apache 未加载配置文件。

有没有我可以触发的命令来查看特定的配置文件是否被 Apache 加载?

apachectl configtest
Run Code Online (Sandbox Code Playgroud)

不打印错误。服务器重新启动没有错误。

apache-2.2

15
推荐指数
2
解决办法
1万
查看次数

`No input file specified.`的真正解决方案(nginx,fpm)

这个问题的大多数答案是,设置 fastcgi_param SCRIPT_FILENAME 并且它会起作用(斜体格式被破坏了?!)。

我已经设置了这个变量(正确)但它仍然显示错误而不是 404 页面,因为问题的根源在这里:

location ~ \.php$ {
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
    }
Run Code Online (Sandbox Code Playgroud)

一个不存在的路径被传递给 php5-fpm,这反过来打印错误,在日志中看起来像:

FastCGI sent in stderr:
"Unable to open primary script: ... (No such file or directory)"
while reading response header from upstream
Run Code Online (Sandbox Code Playgroud)

所以在该行之前fastcgi_pass 必须有一个条件来检查文件是否真的存在,或者,如果fpm worker返回“file not found”,引导nginx返回404页面。

我怎样才能做到这一点?

nginx fastcgi php-fpm http-status-code-404

8
推荐指数
1
解决办法
3万
查看次数

nginx默认服务器不工作

我正在使用 Debian,最新的 dotdeb nginx-lite。我已经读过,server如果域没有特定的服务器部分,nginx 找到的第一部分将用作后备/默认部分。

我从我的安装中删除了sites-availablesites-enabled,因为我/www对所有与 http 相关的内容都使用了专用安装。

/etc/nginx/nginx.conf有这些行,包括其他 confs:

    include /www/conf.d/nginx/default.conf;
    include /etc/nginx/conf.d/*.conf;
    include /www/conf.d/nginx/*;
Run Code Online (Sandbox Code Playgroud)

default.conf 看起来像:

server {
        server_name 0.0.0.0;
        listen 0.0.0.0:80;
        rewrite ^ http://mymaintarget.com permanent;
}
Run Code Online (Sandbox Code Playgroud)

这对我不起作用。我仍然收到此警告:

Restarting nginx: nginxnginx: [warn] conflicting
server name "0.0.0.0" on 0.0.0.0:80, ignored
Run Code Online (Sandbox Code Playgroud)

我很确定没有其他服务器部分,并且 default.conf 是第一个包含/使用的。

任何人都知道有什么问题或配置默认服务器的正确方法是什么?

更新完整的配置文件:

nginx.conf:

user www-data;
worker_processes 8;
pid /run/nginx.pid;

events {
        worker_connections 768;
}

http {
        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 10;
        types_hash_max_size …
Run Code Online (Sandbox Code Playgroud)

nginx virtualhost

4
推荐指数
1
解决办法
2万
查看次数

通过 apt 将软件包从 live CD 安装到真实系统

我只能通过 Live CD 启动,并且需要将 Debian 软件包安装firmware-linux-nonfree到我的服务器上才能成功启动。

我怎样才能做到这一点?会chroot帮助我吗?

debian rescue-disk live-cd apt

3
推荐指数
1
解决办法
1万
查看次数

外部驱动器从 /dev/sda 切换到 /dev/sdb

我们有一个带有外部驱动器的小盒子,用于备份配置集。我发现这个问题很简单,在重新启动或什么的未知事件驱动的切换/dev/sda1/dev/sdb1

我怎样才能绕过这个或配置 fstab 来尝试这两个位置?

/dev/sda1       /stor           ext4    defaults,noatime,noexec  0       0
Run Code Online (Sandbox Code Playgroud)

你可以看到我做了一些调试:

root@nsa:~# mount /stor
mount: special device /dev/sda1 does not exist
Run Code Online (Sandbox Code Playgroud)

正如您在下面看到的,我在编写问题时进行了一些调试。

系统日志:

Jul 16 09:48:48 nsa kernel: [167416.395274] EXT4-fs warning (device sda1): 
         __ext4_read_dirblock:908: error reading directory block (ino 2, block 0)
Run Code Online (Sandbox Code Playgroud)

#df -h之前umount

/dev/sda1       1.4T  185G  1.1T  15% /stor
Run Code Online (Sandbox Code Playgroud)

#dmesg

[   170.431715] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
[119366.019470] usb 1-1.2: USB disconnect, device number 4
[119366.297601] …
Run Code Online (Sandbox Code Playgroud)

hard-drive mount usb fstab

2
推荐指数
1
解决办法
4807
查看次数