无法为地址php-fpm绑定监听套接字

Kyl*_*Lin 6 php linux nginx

我按照https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-centos-7的说明进行操作,但是我是分步进行的重新启动php-fpm,它失败了。

错误日志:

错误:无法为地​​址“ var / run / php-fpm.d / www.conf”绑定侦听套接字:没有此类文件或目录错误:FPM初始化失败

环境:VirtualBox中安装了装有PHP,MariaDB和NginX的CentOS 7。

日志/报告:

journalctl显示:

    localhost.localdomain php-fpm[2574]: Error: unable to bind listening socket for address '/var/run/php-fpm.d/www.conf' : No such file or directory
    localhost.localdomain php-fpm[2574]:Error: FPM initialization failed
    localhost.localdomain systemd[1]: php-fpm.service: main process exited, code=exited, status=78/n/a
    localhost.localdomain systemd[1]: Failed to start the php fastCGI process manager.
Run Code Online (Sandbox Code Playgroud)

状态显示:

    php-fpm.service - the php fastcgi process manager
    Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled)
    Active: failed (result: exit-cod )
    Process: 2639 ExecStart=/usr/sbin/php-fpm --nodaemonize (code=exited,      
    status=78)
    Main PID:2639 (code=exited, status=78)
    localhost.localdomain php-fpm[2639]: Error: unable to bind listening socket for address '/var/run/php-fpm.d/www.conf' : No such file or directory
    localhost.localdomain php-fpm[2639]: ERROR: FPM initialization failed
    localhost.localdomain steam[1]: failed to start the php fastCGI process manager.
    localhost.localdomain steam[1]: Unit php-fpm.service entered failed state.
Run Code Online (Sandbox Code Playgroud)

www.conf是

    [www]
    listen = /var/run/php-fpm.d/www.conf
    listen.allowed_clients = 127.0.0.1
    user = apache
    group = apache
    pm = dynamic
    pm.max_children = 50
    pm.start_servers = 5
    pm.min_spare_servers = 5
    pm.max_spare_servers = 5
    slowlog = /var/log/php-fpm/www-slow.log
    php_admin_value[error_log] = /var/log/php-fpm/www-error.log
    php_admin_flag[log_errors] = on
    php_value[session.save_handler] = files
    php_value[session.save_path] = /var/lib/php/session
Run Code Online (Sandbox Code Playgroud)

Nginx default.conf是

    server{
            listen 80;
            server_name ip address;
            root /usr/share/nginx/html;
            location / {
            try_files $uri $uri/ = 404;
    }
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
            root /usr/share/nginx/html;
    }
    location ~\.php$ {
            fastcgi_split_path_info ^(.+?\.php)(./*)$;
            fastcgi_pass unix:/var/run/php-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    }
Run Code Online (Sandbox Code Playgroud)

并且,检查cgi.fix_pathinfo = 0。

Kap*_*wal 12

对于 Fedora,缺少/run/php-fpm目录。我创建了一个使用mkdir /run/php-fpm

现在启动 php-fpm 服务(我在 docker 容器中使用它)

/usr/sbin/php-fpm
Run Code Online (Sandbox Code Playgroud)


red*_*her 9

为sock文件创建目录:

mkdir -p /var/run/
Run Code Online (Sandbox Code Playgroud)