Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.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
PHP到.htaccess?_Php_.htaccess - Fatal编程技术网

PHP到.htaccess?

PHP到.htaccess?,php,.htaccess,Php,.htaccess,如何将此PHP代码重写为.htaccess规则 $url = "$_SERVER[HTTP_HOST]"; if(strrpos($url, "m.cloudcms.co") === false){ header("HTTP/1.0 403 Forbidden"); echo '<h1>Forbidden Access</h1>'; echo '<p>You have reached this page in error.</p&

如何将此PHP代码重写为.htaccess规则

$url = "$_SERVER[HTTP_HOST]";
if(strrpos($url, "m.cloudcms.co") === false){
    header("HTTP/1.0 403 Forbidden");
    echo '<h1>Forbidden Access</h1>';
    echo '<p>You have reached this page in error.</p>';
    exit;
}
$url=“$\u服务器[HTTP\u主机]”;
if(strrpos($url,“m.cloudcms.co”)==false){
标题(“HTTP/1.0 403禁止”);
回音“禁止进入”;
回显“您到达此页面时出错。

”; 出口 }
这是我的.htaccess:

deny from all
allow from m.cloudcms.co
# caching static files
<IfModule mod_headers.c>
    <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|bmp|js|css|swf|woff|svg|ttf|otf|eot)(\.gz)?$">
        Header unset Pragma
        Header unset ETag
        Header set Cache-Control "max-age=-1, no-store, no-cache, must-revalidate"
    </FilesMatch>
</IfModule>
FileETag None
<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresDefault M-1
  ExpiresByType text/html M-1
  ExpiresByType image/gif M-1
  ExpiresByType image/jpeg M-1
  ExpiresByType image/png M-1
  ExpiresByType text/css M-1
  ExpiresByType text/javascript M-1
  ExpiresByType application/javascript M-1
  ExpiresByType application/x-javascript M-1
  ExpiresByType text/xml M-1
  ExpiresByType image/svg+xml M-1
  ExpiresByType application/x-font-ttf M-1
  ExpiresByType application/x-font-truetype M-1
  ExpiresByType application/x-font-opentype M-1
  ExpiresByType application/vnd.ms-fontobject M-1
  ExpiresByType application/x-font-woff M-1  
</IfModule>


# For servers that support output compression, you should pick up a bit of
# speed by un-commenting the following lines.

php_flag zlib.output_compression On
php_value zlib.output_compression_level 9
deny from all
允许从m.cloudcms.co
#缓存静态文件
标题未设置Pragma
标题未设置ETag
标题集缓存控制“最大年龄=-1,无存储,无缓存,必须重新验证”
FileTag无
过期于
到期默认M-1
ExpiresByType文本/html M-1
ExpiresByType图像/gif M-1
过期按类型图像/jpeg M-1
ExpiresByType图像/png M-1
ExpiresByType文本/css M-1
ExpiresByType文本/javascript M-1
ExpiresByType应用程序/javascript M-1
ExpiresByType应用程序/x-javascript M-1
ExpiresByType文本/xml M-1
ExpiresByType图像/svg+xml M-1
过期按类型应用程序/x-font-ttf M-1
过期按类型应用程序/x-font-truetype M-1
过期按类型应用程序/x-font-opentype M-1
ExpiresByType应用程序/vnd.ms-fontobject M-1
过期按类型应用程序/x-font-woff M-1
#对于支持输出压缩的服务器,您应该了解一些
#通过取消对以下行的注释来提高速度。
php_标志zlib.output_压缩打开
php_值zlib.output_压缩_级别9

现在正在对cloudcms.co和m.cloudcms.co执行403禁止消息,您需要确定要匹配的URI是什么,然后使用文档根目录(或某个适当位置)中的规则进行相同类型的检查

“$\u服务器[HTTP\u主机]”
本质上是
%{HTTP\u主机}
变量。要返回403,只需在规则中使用
F
标志:

RewriteCond %{HTTP_HOST} !^m.cloudcms.co$ [NC]
RewriteRule ^(.*)$ - [L,F]
这里,要匹配的URI是
(.*)
,或所有内容。如果要将其缩小到更具体的范围,则需要修改正则表达式以匹配

对于
/file.php

RewriteRule ^file\.php$ - [L,F]
对于目录
/some/path/
中的所有内容:

RewriteRule ^some/path/ - [L,F]

等等。

是的,有,你做过任何研究吗?你有没有尝试过从m.cloudcms.co拒绝?是的,我搜索到的所有东西都是从m.cloudcms.co得到的,也就是说,如果我来自一个名为的主机,它通常应该是
允许来自所有人
拒绝来自m.cloudcms.co
,因为我知道您只允许来自
m.cloudcms.co
?在这种情况下,
Deny from all
Allow from m.cloudcms.co
DOH!忘了重写吧!这就成功了。现在让我问你,你的个人意见。。。你认为我应该抛出403错误,还是干脆把它们丢给m.cloudcms.co?