我将我的友好URL从Apache移到了Nginx,但遇到了问题。我希望Friendly URL仅在子目录sgforum中有效。

在PHP中,我收到的地址为:127.0.0.1/sgforum/index,127.0.0.1/sgforum/member等。

当我继续使用127.0.0.1/sgforum/时,它可以工作,但是当我给成员(127.0.0.1/sgforum/member)或索引时,它会将文件下载到我的计算机上,而不是用php打开。

这是我的/ etc / nginx / sites-available / default文件:

server {
    listen 80 default_server;
    #listen [::]:80 default_server;

    root /home/ariel/workspace;

    index index.php index.html;

    server_name _;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    }

    # FRIENDLY URLS
    location /sgforum/ {
        if (!-e $request_filename){
            rewrite ^/sgforum/(.*)$ /sgforum/index.php break;
        }
    }

    location ~ /\.ht {
        deny all;
    }
}

最佳答案

我对其进行了更改,终于可以正常工作了。

# FRIENDLY URLS
location /sgforum/ {
    try_files $uri $uri/ /sgforum/index.php;
}

07-27 14:07