【发布时间】:2014-11-04 03:55:08
【问题描述】:
需要一些关于我的 Apache .htaccess 规则的指导。对您的向导来说应该是一个不错的简单方法:)
基本上设置是这样的:
- 根域用于访问我们的前端站点(管理员和销售),该站点始终通过我们的根域使用
www,并从我们的应用程序加载。 - 我们在 /blog 上设置了 Wordpress,这将始终并且应该只加载到我们主根域的
www子域上。 - 我们允许用户页面使用通配符子域和自定义域,因此基本上任何
*.domain.com或usersdomain.com都会通过 Codeigniter 路由,以便为用户显示正确的页面。 - 我们需要让
/blog/用于通配符域和子域以在用户页面上加载/blog/页面,这样他们基本上就有了自己的博客。换句话说。任何非www.domain.com主机都应绕过/blogWordpress 安装并路由到我们的应用程序以从应用程序加载正确的非wordpress 页面。
现在,如果您访问 usersdomain.com/blog/ 或 userssubdomain.domain.com,它会加载 Wordpress 安装,这是不理想的行为。
这是我们当前的 htaccess:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]
RewriteCond $1 !^blog
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]
有没有人知道如何实现上述目标?基本上需要一个 RewriteRule 或 Condition 说明
"如果请求主机不是
www.domain.com则忽略/blog目录和 发送至index.php"
供参考
我正在寻找这个问题的想法,但没有运气:https://stackoverflow.com/questions/12502885/how-to-exclude-all-files-and-directories-except-one-directory-rewritecond
【问题讨论】:
标签: apache .htaccess mod-rewrite url-rewriting