在我目前的项目中,我被要求为每个注册用户提供博客功能,这意味着当你注册时,你可以自动在网站上写博客。这很容易完成,但是,我被指示使用格式的 URL,例如http://username.site.com
将用户名引用到特定用户博客。
我正在尝试使用 .htaccess 文件来实现这一点,但似乎我的条件得到了满足,但我收到了 500 内部服务器错误,这是由无限循环的重写引起的。我想避免这种情况,但我找不到合适的解决方案。到目前为止,这是我的 .htaccess:
<IfModule mod_rewrite.c>
Options +FollowSymLinks
Options +Indexes
RewriteEngine On
RewriteBase /
RewriteCond $1 !^(index\.php|images|tinymce|files|css|js|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9-_]+).dev.example.com [NC]
RewriteRule ^(.*)$ /index.php/blog/%2/$1 [L]
</IfModule>
附加信息:该站点是服务器托管的,但被隐藏,dev.example.com
因此博客 URL 应该看起来像username.dev.example.com
,当站点启动时,这当然是username.example.com
。它是用 Codeigniter 构建的。
任何有关改进 .htaccess 的建议都会很棒,谢谢。