如果在我的httpd.conf文件中使用mod_rewrite规则玩了很多。无论我的研究如何,我都无法完成一些工作。
这是我的文件结构:
/
-index.php
-app.php
/css
-style.css
/js
-script.js
服务器应该提供index.php(主页)或app.php(单个应用程序页面)。脚本和样式文件都包含在两个php文件中。
目标
(默认情况下,这似乎已经有效了。)
(这已经在扩展了。一个问题是app.php中的相对链接是错误的,因为文件"认为"它位于子目录而不是root。我想改变)
(这是为了支持"假冒" pushState服务器)编辑澄清:/ a /之后的所有内容都将由我的Javascript应用解释。当客户端点击domain.com/a/user/10之类的链接时,将不会向服务器发出额外请求。
加成
向除根网址以外的所有网址添加尾部斜杠。
e.g。将 domain.com/a/user/10 转入 domain.com/a/user/10 /
如果网址丢失,请将网址添加到网址。
我尝试了什么
-add www
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301]
-add斜杠
RewriteCond %{REQUEST_URI} !(/$|\.)
RewriteRule (.*) %{REQUEST_URI}/ [R=301]
-redirect / a /
RewriteCond %{REQUEST_URI} ^(/a/)$
RewriteRule ^ /app.php
非常感谢任何指针或帮助!感谢。
修改
我已使用此工具http://htaccess.madewithlove.be/来测试某些条件。