nginx用户公共主页没有~
如果我想将nginx用户公共主页没有~,nginx,Nginx,如果我想将public\u html的用户主页设置为http://mysite/user1/ 在user1 如果访问http://mysite/它将转到/usr/share/nginx/html/index.html 我将配置设置如下: server { listen 80 default_Server; # Home directories location ~ ^/(.+?)(/.*)?$ { alias /home/$1/public_html$2;
public\u html
的用户主页设置为http://mysite/user1/
在user1
如果访问http://mysite/
它将转到/usr/share/nginx/html/index.html
我将配置设置如下:
server {
listen 80 default_Server;
# Home directories
location ~ ^/(.+?)(/.*)?$ {
alias /home/$1/public_html$2;
}
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
}
当我访问
http://mysite/user1/
,它的工作原理与我预期的一样
但是现在http://mysite/
变成404
。
我不太熟悉正则表达式和规则搜索序列
如何使用户主页和根目录都工作?在内部,URI
/
映射到URI/index.html
,该URI也与正则表达式匹配。假设服务器上唯一的子目录是用户,可以在正则表达式中强制使用第二个/
location ~ ^/(.+?)/(.*)?$ {
alias /home/$1/public_html/$2;
}
或者,使/index.html
URI显式(通过移动root
语句并添加空的位置
块):
更多信息请参见。好的,我会帮助您,但我的问题是。如果您访问
http://mysite/
您想访问/usr/share/nginx/html/index.html
然后点击http://mysite/user1/
?http://mysite/user1/
将是/home/user1/public\u html/index.html
和http://mysite/
将被删除/usr/share/nginx/html/index.html
root /usr/share/nginx/html;
...
location = /index.html {}