Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在子域上设置Apache HTAccess重写规则_Apache_.htaccess_Url Rewriting_Rewrite - Fatal编程技术网

在子域上设置Apache HTAccess重写规则

在子域上设置Apache HTAccess重写规则,apache,.htaccess,url-rewriting,rewrite,Apache,.htaccess,Url Rewriting,Rewrite,我正在为我的测试服务器使用子域URL。比如: 我的.htaccess文件中包含以下内容: RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^www\.(.*) [NC] RewriteRule ^(.*)$ http://%1/$1 RewriteRule ^about/(.*)$ /about.php?request=$1 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond

我正在为我的测试服务器使用子域URL。比如:

我的.htaccess文件中包含以下内容:

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1
RewriteRule ^about/(.*)$ /about.php?request=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [NC,L]
上述方法在URL的生产(非子域)集上运行良好。但它并没有在我的开发盒上占一席之地。例如,如果我输入

http://dev.mysite.com/about
我得到一个404错误。但是下面附加的.php扩展可以工作

http://dev.mysite.com/about.php

我猜这与处理www子域的第一个重写条件有关。如何修改.htaccess文件以说明dev子域?

您至少需要
AllowOverride All
AllowOverride FileInfo
才能使htaccess文件在服务器/vhost配置中工作。FileInfo是用于mod_rewrite之类的东西

此外,请确保已加载mod_rewrite

您还需要更改此条件:

RewriteCond %{REQUEST_FILENAME}.php -f
致:


因为mod_rewrite将识别出
/about
有一个php文件,并使它通过
-f
测试,从而导致
/about/something.php
您的.htaccess似乎未启用

将相同的垃圾文本放在
.htaccess
的顶部,验证您的
.htaccess
是否已启用,并查看是否生成500(内部服务器)错误

要启用
.htaccess
您的
httpd.conf
文件需要以下行:

AllowOverride All

通过将相同的垃圾文本放在
.htaccess
上,验证您的
.htaccess
是否已启用,并查看它是否生成500(内部服务器)错误?@anubhava在文件顶部添加额外文本后没有错误,这意味着您的Apache配置尚未启用。htaccess@anubhava谢谢我忘了编辑dev框上的httpd.conf文件。很高兴知道你的问题已经解决了,你可以把这个写下来作为回答。我在下面添加了这些评论作为回答,以帮助未来的访问者。
AllowOverride All