经过一段相当陡峭的学习曲线后,我成功地在我的机器上创建了一个虚拟主机(运行EASY PHP v12的Windows 7)来为我正在开发的其中一个站点提供服务。 (在此之前,我将进入并将DocumentRoot和Directory路径更改为我想要处理的项目的文件夹。)
没有虚拟主机,我没有问题让网址重写工作。以下是我在每个项目中设置的.htaccess
RewriteEngine On
Options +FollowSymlinks
RewriteCond %{HTTP_HOST} ^localhost.com
RewriteRule (.*) http://www.localhost.com/$1 [R=301,L]
#RewriteCond %{THE_REQUEST} ^.*/index.php
#RewriteRule ^(.*)index.php$ http://www.localhost.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
RewriteBase /
因此,例如,当我访问localhost.com/file时,它会将我的文件传递到当前“服务器”工作目录的根文件夹中。
自从使用此代码添加虚拟主机
#virtualhost
<VirtualHost 127.0.0.1>
DocumentRoot "c:/dropbox/newsite/site"
ServerName newsite
<Directory "c:/dropbox/newsite/site">
Options FollowSymLinks Indexes
AllowOverride All
Order deny,allow
Allow from 127.0.0.1
Deny from all
Require all granted
</Directory>
</VirtualHost>
#virtualhost
我似乎无法让重写工作 - 例如newsite / home应该带我到home.php但不会。
欢迎任何建议。感谢。