我需要使用样式apache2 user_dir
配置我的nginx服务器我有以下部分的配置文件:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
location ~ ^/~(.+?)(/.*)?$ {
alias /home/$1/public_html$2;
index index.php index.html index.htm;
autoindex on;
}
这部分有效,我看到目录,index.html,但index.php不起作用。
哪种配置应该正确?谢谢。
答案 0 :(得分:1)
要从不同的根目录运行PHP(即hashCode()
),您需要使用嵌套的位置块。
例如:
select()
请注意,setValue()
用作别名文件的路径。需要颠倒位置的顺序(如上所示),以便正确的位置处理以/home/$1/public_html$2
结尾的URI。有关详情,请参阅this document。
您应该添加适当的location ~ ^/~(.+?)(/.*)?$ {
alias /home/$1/public_html$2;
index index.php index.html index.htm;
autoindex on;
location ~ \.php$ {
if (!-f $request_filename) { return 404; }
include ...;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
语句。 $request_filename
文件可能合适,否则请使用.php
。