我正在建立一个网站建设者,我想让网址更漂亮。
网址将是例如:
https://ccc-bb.example.com
=> https://example.com/project/show/ccc/bb
这是我的 .htaccess 文件:
<IfModule mod_rewrite.c>
RewriteEngine On
# prevents files starting with dot to be viewed by browser
RewriteRule /\.|^\.(?!well-known/) - [F]
# front controller
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\-(.*)$ https://example.com/project/show/$1/$2 [L]
当我使用上面的(https://ccc-bb.example.com
)时,它会将我发送到子域空文件夹。该文件夹只有.htaccess文件。
我错过了什么?我从来没有编辑过.htaccess文件而谷歌没有帮助我(或者我不知道应该寻找什么)。
答案 0 :(得分:0)
你的第一个dotfiles规则是可以的,但反过来会更好,因为第二部分只能匹配开始,但第一部分只能在子目录中匹配。
RewriteRule ^\.(?!well-known/)|/\. - [F]
您的其他规则问题是您希望它与子域匹配。 RewriteRule
不会对您在浏览器的地址栏中看到的整个字符串进行操作,只会对路径部分进行操作,而.htaccess
中的RewriteCond
也会在删除前导目录时更少。要访问所需信息,请使用RewriteCond %{HTTP_HOST} ^([^-]++)-([^-.]++)\.example\.com$
RewriteRule ^(?!project/show/).* project/show/%1/%2/$0 [L,DPI]
:
\.example\.com$
(如果您的主域名不包含连字符,则不需要包含data <- data.frame(Name = c(rep("A",25), rep("B",50)),
Date = seq(as.Date("2018-01-01"), as.Date("2020-01-12"), by = 10),
C1 = rep(c(100,NA,NA,NA,NA,500,320,102,412,NA,200,NA,145,800,230),5),
C2 = rep(c(100,NA,NA,NA,NA,500,320,102,412,NA,200,NA,145,800,230),5)*2)
。)