1

我正在处理一个小型个人项目,在深入研究之前,我想在这里获得一些关于设置和 URL 方案的最佳实践的意见......以及我如何设置.htaccess 重写以下内容。我的问题是:

  1. 以下设置是在小型用户配置文件设置中管理用户信息的最佳方式吗?

  2. 我已经研究出如何使用通配符子域和 httpd.conf文件设置让子域为重写 username.domain.com 工作......但我被困在下面看到的其余方案上。基本上,用户个人资料将始终生成username.domain.com并附加其帐户中的各个页面(照片、视频、笔记等)。我将如何设置.htaccess重写以适应这种情况?我真的很感谢这里的任何建议。我在 stackoverflow 和其他网站上进行了大量研究,但找不到合适的解释来实现这一目标。

谢谢你的帮助。

www.domain.com/profile.php?u=username-->username.domain.com

www.domain.com/photos.php?u=username-->username.domain.com/photos

www.domain.com/photos.php?u=username&a=album-->username.domain.com/photos/album

www.domain.com/photos.php?u=username&a=album1&p=photoid-->username.domain.com/photos/album1/photoid

www.domain.com/settings.php?u=username-->username.domain.com/settings

ETC

4

2 回答 2

2

您建议的设置对我来说看起来不错。以下是 .htaccess 的一些规则(确保您启用了 mod_rewrite 并在 httpd.conf 中设置了 AllowOverride All):

RewriteEngine on
RewriteBase /

RewriteCond %{HTTP_HOST} (.*)\.domain\.com
RewriteRule ^$ http://www.domain.com/profile.php?u=%1 [L,QSA]

RewriteRule ^photos/?$ http://www.domain.com/photos.php?u=%1

RewriteRule ^photos/([^/]+)/?$ http://www.domain.com/photos.php?u=%1&a=$1

RewriteRule ^photos/([^/]+)/([^/]+)/?$ http://www.domain.com/photos.php?u=%1&a=$1&p=$2

RewriteRule ^settings/?$ http://www.domain.com/settings.php?u=%1
于 2012-05-25T06:03:48.547 回答
0

您使用哪个服务器?首先在服务器的配置文件中使用重写,而不是 htaccess,htaccess 会减慢服务器的速度。

编辑:我不关心速度,但据我记得 htaccess 减慢了 apache,我不知道多少。对不起,你必须用谷歌搜索:)

于 2012-05-25T06:18:57.870 回答