经过一段相当陡峭的学习曲线后,我设法在我的机器上创建了一个虚拟主机(运行 EASY PHP v12 的 Windows 7)来为我正在开发的一个站点提供服务。(在此之前,我会进入并将 DocumentRoot 和 Directory 路径更改为我想要处理的项目的文件夹)。
如果没有虚拟主机,我可以毫无问题地进行 url 重写工作。以下是我在每个项目中设置的 .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 时,它会将我带到当前“服务器”工作目录的根文件夹中的 file.php。
由于使用此代码添加虚拟主机
#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 但没有。
欢迎大家提出意见。谢谢。