Take the 2-minute tour ×

I'm trying to setup nginx and php-fpm on Arch Linux. I've been reading through the nginx wiki and its linked guides. Static pages work great. PHP pages don't seem to get passed to php-fpm. When I view source on my test index.php, I see the actual php source. What am I doing wrong?

I've read through some similar questions here, but they're a bit out of date, using spawn-fcgi, whereas I'm using php-fpm with a linux socket instead of tcp.


worker_processes 1;

events {
    worker_connections  1024;

http {
    include             mime.types;
    default_type        application/octet-stream;
    sendfile            on;
    keepalive_timeout   65;

    server {
        listen          80;
        server_name     localhost
        root            /home/http;
        index           index.html
        location / {
        include php.conf;


location ~ \.php {
        fastcgi_param  QUERY_STRING       $query_string;
        fastcgi_param  REQUEST_METHOD     $request_method;
        fastcgi_param  CONTENT_TYPE       $content_type;
        fastcgi_param  CONTENT_LENGTH     $content_length;

        fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
        fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
        fastcgi_param  REQUEST_URI        $request_uri;
        fastcgi_param  DOCUMENT_URI       $document_uri;
        fastcgi_param  DOCUMENT_ROOT      $document_root;
        fastcgi_param  SERVER_PROTOCOL    $server_protocol;

        fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
        fastcgi_param  SERVER_SOFTWARE    nginx;

        fastcgi_param  REMOTE_ADDR        $remote_addr;
        fastcgi_param  REMOTE_PORT        $remote_port;
        fastcgi_param  SERVER_ADDR        $server_addr;
        fastcgi_param  SERVER_PORT        $server_port;
        fastcgi_param  SERVER_NAME        $server_name;



echo "hello world";
share|improve this question
add comment

1 Answer

up vote 3 down vote accepted

You're using short opening tags which are disabled by default in newer versions of PHP, always, always use full opening tags <?php

share|improve this answer
add comment

Your Answer


