1

大家早,

我花了周日试图重写域无济于事。我正在使用 MAMP,并使用以下内容更改了我的 Hosts 文件夹和 MAMP httpd.conf:

主机文件的补充:

127.0.0.1   apagefor.local

添加到 httpd.conf 文件:

<VirtualHost *>
    ServerName pagefor.local
    DocumentRoot /Applications/MAMP/htdocs/pagefor
</VirtualHost>

这让我摆脱了讨厌的 localhost:8888/pagefor/ ,只需使用一个不错的本地 url 就pagefor.local可以完美地工作。但是现在我尝试尝试在域之后直接放置用户名来进行 htaccess 重写。允许我执行以下操作:

改变这个:

pagefor.local/LEE

对此:

pagefor/LEE.local

那我累了怎么办?好吧,我认为我可以执行以下操作(在 .htaccess 中):

RewriteEngine On
RewriteCond %{HTTP_HOST}  ^`pagefor.local` [NC]
RewriteRule ^pagefor.local/([A-Za-z0-9-.]+)  `http://pagefor/$1.local`

我仍在尝试锻炼如何做到这一点,如果有人能告诉我我要去哪里......如果我走在正确的道路上(双关语:))谢谢。

更新

感谢 anubhava ,我已设法将 url 从更改http://pagefor.local/lee为感谢。http://pagefor/lee.local我唯一的争论是我最初将所有内容都放在了控制整个应用程序的 index.php 文件中......所以是否可以执行以下操作:

RewriteCond %{HTTP_HOST}              ^pagefor\.local$ [NC]
RewriteRule ^([A-Za-z0-9-.]+)$   http://pagefor/$1.local [NC,L]

然后使用以下行将 $1 放入我的 index.php 中:

RewriteRule ^([A-Za-z0-9-.]+).local$    index.php?url=$1 [NC,L]

因此,当 Url 为 pagefor/lee.local 时,它位于以下 index.php?url=lee 上。我厌倦了上述但它没有成功。我希望我在解决这个问题的正确轨道上。

4

1 回答 1

1

试试这个:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^pagefor\.local$ [NC]
RewriteRule ^([A-Za-z0-9-.]+)$ http://pagefor/$1.local [L,R]
于 2013-03-25T10:51:34.723 回答