Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.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
Wordpress 基于IP的apachehtaccess条件重定向_Wordpress_Apache_.htaccess_Mod Rewrite_Redirect - Fatal编程技术网

Wordpress 基于IP的apachehtaccess条件重定向

Wordpress 基于IP的apachehtaccess条件重定向,wordpress,apache,.htaccess,mod-rewrite,redirect,Wordpress,Apache,.htaccess,Mod Rewrite,Redirect,如果用户不是我,我正在搜索将其重定向到子目录的方法:) 为此,我阅读了一些关于stackoverflow的答案,但所有答案都是关于只重定向到页面或目录。 最后我有了这样一种方法: <IfModule mod_rewrite.c> Options +FollowSymlinks RewriteEngine on RewriteCond %{REMOTE_ADDR} !=123.45.67.89 RewriteCond %{HTTP_HOST} ^(www.)?siteadress.co

如果用户不是我,我正在搜索将其重定向到子目录的方法:)
为此,我阅读了一些关于stackoverflow的答案,但所有答案都是关于只重定向到页面或目录。
最后我有了这样一种方法:

<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !=123.45.67.89
RewriteCond %{HTTP_HOST} ^(www.)?siteadress.com$ [NC]
RewriteCond %{REQUEST_URI} !^/sitefiles/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /sitefiles/$1
RewriteCond %{HTTP_HOST} ^(www.)?siteadress.com$ [NC]
RewriteRule ^(/)?$ sitefiles/ [L]
</IfModule>
<if user ip is xxx.xxx.xxx.xxx> // it is me
 # BEGIN WordPress
 <IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteBase /
 RewriteRule ^index\.php$ - [L]
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule . /index.php [L]
 </IfModule>

 # END WordPress
<otherwise> // it is a user/visitor
 <IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{HTTP_HOST} ^(www.)?siteadress.com$ [NC]
 RewriteCond %{REQUEST_URI} !^/sitefiles/
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ /sitefiles/$1
 RewriteCond %{HTTP_HOST} ^(www.)?siteadress.com$ [NC]
 RewriteRule ^(/)?$ sitefiles/ [L]
 </IfModule>

选项+FollowSymlinks
重新启动发动机
重写cond%{REMOTE_ADDR}=123.45.67.89
重写cond%{HTTP_HOST}^(www.)?siteadress.com$[NC]
重写cond%{REQUEST_URI}^/站点文件/
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则^(.*)$/sitefiles/$1
重写cond%{HTTP_HOST}^(www.)?siteadress.com$[NC]
重写规则^(/)?$sitefiles/[L]
但我不工作,这不是我想要的,我想要这样的结构:

<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !=123.45.67.89
RewriteCond %{HTTP_HOST} ^(www.)?siteadress.com$ [NC]
RewriteCond %{REQUEST_URI} !^/sitefiles/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /sitefiles/$1
RewriteCond %{HTTP_HOST} ^(www.)?siteadress.com$ [NC]
RewriteRule ^(/)?$ sitefiles/ [L]
</IfModule>
<if user ip is xxx.xxx.xxx.xxx> // it is me
 # BEGIN WordPress
 <IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteBase /
 RewriteRule ^index\.php$ - [L]
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule . /index.php [L]
 </IfModule>

 # END WordPress
<otherwise> // it is a user/visitor
 <IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{HTTP_HOST} ^(www.)?siteadress.com$ [NC]
 RewriteCond %{REQUEST_URI} !^/sitefiles/
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ /sitefiles/$1
 RewriteCond %{HTTP_HOST} ^(www.)?siteadress.com$ [NC]
 RewriteRule ^(/)?$ sitefiles/ [L]
 </IfModule>
//是我
#开始WordPress
重新启动发动机
重写基/
重写规则^index\.php$-[L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则/index.php[L]
#结束WordPress
//它是一个用户/访问者
重新启动发动机
重写cond%{HTTP_HOST}^(www.)?siteadress.com$[NC]
重写cond%{REQUEST_URI}^/站点文件/
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则^(.*)$/sitefiles/$1
重写cond%{HTTP_HOST}^(www.)?siteadress.com$[NC]
重写规则^(/)?$sitefiles/[L]
我的意思是,我想在我的网站上安装wordpress,但除了我之外,没有人可以访问wordpress,他们将重定向到子文件夹(sitefiles文件夹,其中包含临时网站的html文件),直到wordpress网站准备发布

我还需要让用户/机器人远离wordpress的页面和帖子。他们将只能访问子文件夹文件(index.html、news.html),而他们想浏览原始站点(url不应该像SiteAddress.com/sitefiles/index.php那样)。
有办法吗?谢谢

EDİT:添加完整代码块以提高可理解性

如果不是访问者/用户(仅限我),我需要添加以下所有.htaccess代码,以便正确测试我的站点

<if user ip is xxx.xxx.xxx.xxx> // it is me
# BEGIN W3TC Browser Cache
<IfModule mod_mime.c>
    AddType text/css .css
    AddType text/x-component .htc
    AddType application/x-javascript .js
    AddType application/javascript .js2
    AddType text/javascript .js3
    AddType text/x-js .js4
    AddType text/html .html .htm
    AddType text/richtext .rtf .rtx
    AddType image/svg+xml .svg .svgz
    AddType text/plain .txt
    AddType text/xsd .xsd
    AddType text/xsl .xsl
    AddType text/xml .xml
    AddType video/asf .asf .asx .wax .wmv .wmx
    AddType video/avi .avi
    AddType image/bmp .bmp
    AddType application/java .class
    AddType video/divx .divx
    AddType application/msword .doc .docx
    AddType application/vnd.ms-fontobject .eot
    AddType application/x-msdownload .exe
    AddType image/gif .gif
    AddType application/x-gzip .gz .gzip
    AddType image/x-icon .ico
    AddType image/jpeg .jpg .jpeg .jpe
    AddType application/json .json
    AddType application/vnd.ms-access .mdb
    AddType audio/midi .mid .midi
    AddType video/quicktime .mov .qt
    AddType audio/mpeg .mp3 .m4a
    AddType video/mp4 .mp4 .m4v
    AddType video/mpeg .mpeg .mpg .mpe
    AddType application/vnd.ms-project .mpp
    AddType application/x-font-otf .otf
    AddType application/vnd.ms-opentype .otf
    AddType application/vnd.oasis.opendocument.database .odb
    AddType application/vnd.oasis.opendocument.chart .odc
    AddType application/vnd.oasis.opendocument.formula .odf
    AddType application/vnd.oasis.opendocument.graphics .odg
    AddType application/vnd.oasis.opendocument.presentation .odp
    AddType application/vnd.oasis.opendocument.spreadsheet .ods
    AddType application/vnd.oasis.opendocument.text .odt
    AddType audio/ogg .ogg
    AddType application/pdf .pdf
    AddType image/png .png
    AddType application/vnd.ms-powerpoint .pot .pps .ppt .pptx
    AddType audio/x-realaudio .ra .ram
    AddType application/x-shockwave-flash .swf
    AddType application/x-tar .tar
    AddType image/tiff .tif .tiff
    AddType application/x-font-ttf .ttf .ttc
    AddType application/vnd.ms-opentype .ttf .ttc
    AddType audio/wav .wav
    AddType audio/wma .wma
    AddType application/vnd.ms-write .wri
    AddType application/font-woff .woff
    AddType application/vnd.ms-excel .xla .xls .xlsx .xlt .xlw
    AddType application/zip .zip
</IfModule>
<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType text/css A31536000
    ExpiresByType text/x-component A31536000
    ExpiresByType application/x-javascript A31536000
    ExpiresByType application/javascript A31536000
    ExpiresByType text/javascript A31536000
    ExpiresByType text/x-js A31536000
    ExpiresByType text/html A3600
    ExpiresByType text/richtext A3600
    ExpiresByType image/svg+xml A3600
    ExpiresByType text/plain A3600
    ExpiresByType text/xsd A3600
    ExpiresByType text/xsl A3600
    ExpiresByType text/xml A3600
    ExpiresByType video/asf A31536000
    ExpiresByType video/avi A31536000
    ExpiresByType image/bmp A31536000
    ExpiresByType application/java A31536000
    ExpiresByType video/divx A31536000
    ExpiresByType application/msword A31536000
    ExpiresByType application/vnd.ms-fontobject A31536000
    ExpiresByType application/x-msdownload A31536000
    ExpiresByType image/gif A31536000
    ExpiresByType application/x-gzip A31536000
    ExpiresByType image/x-icon A31536000
    ExpiresByType image/jpeg A31536000
    ExpiresByType application/json A31536000
    ExpiresByType application/vnd.ms-access A31536000
    ExpiresByType audio/midi A31536000
    ExpiresByType video/quicktime A31536000
    ExpiresByType audio/mpeg A31536000
    ExpiresByType video/mp4 A31536000
    ExpiresByType video/mpeg A31536000
    ExpiresByType application/vnd.ms-project A31536000
    ExpiresByType application/x-font-otf A31536000
    ExpiresByType application/vnd.ms-opentype A31536000
    ExpiresByType application/vnd.oasis.opendocument.database A31536000
    ExpiresByType application/vnd.oasis.opendocument.chart A31536000
    ExpiresByType application/vnd.oasis.opendocument.formula A31536000
    ExpiresByType application/vnd.oasis.opendocument.graphics A31536000
    ExpiresByType application/vnd.oasis.opendocument.presentation A31536000
    ExpiresByType application/vnd.oasis.opendocument.spreadsheet A31536000
    ExpiresByType application/vnd.oasis.opendocument.text A31536000
    ExpiresByType audio/ogg A31536000
    ExpiresByType application/pdf A31536000
    ExpiresByType image/png A31536000
    ExpiresByType application/vnd.ms-powerpoint A31536000
    ExpiresByType audio/x-realaudio A31536000
    ExpiresByType image/svg+xml A31536000
    ExpiresByType application/x-shockwave-flash A31536000
    ExpiresByType application/x-tar A31536000
    ExpiresByType image/tiff A31536000
    ExpiresByType application/x-font-ttf A31536000
    ExpiresByType application/vnd.ms-opentype A31536000
    ExpiresByType audio/wav A31536000
    ExpiresByType audio/wma A31536000
    ExpiresByType application/vnd.ms-write A31536000
    ExpiresByType application/font-woff A31536000
    ExpiresByType application/vnd.ms-excel A31536000
    ExpiresByType application/zip A31536000
</IfModule>
<IfModule mod_deflate.c>
    <IfModule mod_setenvif.c>
        BrowserMatch ^Mozilla/4 gzip-only-text/html
        BrowserMatch ^Mozilla/4\.0[678] no-gzip
        BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
        BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
    </IfModule>
    <IfModule mod_headers.c>
        Header append Vary User-Agent env=!dont-vary
    </IfModule>
        AddOutputFilterByType DEFLATE text/css text/x-component application/x-javascript application/javascript text/javascript text/x-js text/html text/richtext image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon application/json
    <IfModule mod_mime.c>
        # DEFLATE by extension
        AddOutputFilter DEFLATE js css htm html xml
    </IfModule>
</IfModule>
<FilesMatch "\.(css|htc|less|js|js2|js3|js4|CSS|HTC|LESS|JS|JS2|JS3|JS4)$">
    FileETag None
    <IfModule mod_headers.c>
        Header set Pragma "public"
        Header append Cache-Control "public"
         Header unset ETag
    </IfModule>
</FilesMatch>
<FilesMatch "\.(html|htm|rtf|rtx|svg|svgz|txt|xsd|xsl|xml|HTML|HTM|RTF|RTX|SVG|SVGZ|TXT|XSD|XSL|XML)$">
    FileETag None
    <IfModule mod_headers.c>
        Header set Pragma "public"
        Header append Cache-Control "public"
         Header unset ETag
    </IfModule>
</FilesMatch>
<FilesMatch "\.(asf|asx|wax|wmv|wmx|avi|bmp|class|divx|doc|docx|eot|exe|gif|gz|gzip|ico|jpg|jpeg|jpe|json|mdb|mid|midi|mov|qt|mp3|m4a|mp4|m4v|mpeg|mpg|mpe|mpp|otf|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|png|pot|pps|ppt|pptx|ra|ram|svg|svgz|swf|tar|tif|tiff|ttf|ttc|wav|wma|wri|woff|xla|xls|xlsx|xlt|xlw|zip|ASF|ASX|WAX|WMV|WMX|AVI|BMP|CLASS|DIVX|DOC|DOCX|EOT|EXE|GIF|GZ|GZIP|ICO|JPG|JPEG|JPE|JSON|MDB|MID|MIDI|MOV|QT|MP3|M4A|MP4|M4V|MPEG|MPG|MPE|MPP|OTF|ODB|ODC|ODF|ODG|ODP|ODS|ODT|OGG|PDF|PNG|POT|PPS|PPT|PPTX|RA|RAM|SVG|SVGZ|SWF|TAR|TIF|TIFF|TTF|TTC|WAV|WMA|WRI|WOFF|XLA|XLS|XLSX|XLT|XLW|ZIP)$">
    FileETag None
    <IfModule mod_headers.c>
        Header set Pragma "public"
        Header append Cache-Control "public"
         Header unset ETag
    </IfModule>
</FilesMatch>
# END W3TC Browser Cache
# BEGIN W3TC CDN
<FilesMatch "\.(ttf|ttc|otf|eot|woff|font.css)$">
<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
</IfModule>
</FilesMatch>
# END W3TC CDN
# BEGIN W3TC Page Cache core
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTPS} =on
    RewriteRule .* - [E=W3TC_SSL:_ssl]
    RewriteCond %{SERVER_PORT} =443
    RewriteRule .* - [E=W3TC_SSL:_ssl]
    RewriteCond %{HTTP:Accept-Encoding} gzip
    RewriteRule .* - [E=W3TC_ENC:_gzip]
    RewriteCond %{HTTP_COOKIE} w3tc_preview [NC]
    RewriteRule .* - [E=W3TC_PREVIEW:_preview]
    RewriteCond %{REQUEST_METHOD} !=POST
    RewriteCond %{QUERY_STRING} =""
    RewriteCond %{REQUEST_URI} \/$
    RewriteCond %{HTTP_COOKIE} !(comment_author|wp\-postpass|w3tc_logged_out|wordpress_logged_in|wptouch_switch_toggle) [NC]
    RewriteCond %{HTTP_USER_AGENT} !(W3\ Total\ Cache/0\.9\.4\.1) [NC]
    RewriteCond "%{DOCUMENT_ROOT}/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC_SSL}%{ENV:W3TC_PREVIEW}.html%{ENV:W3TC_ENC}" -f
    RewriteRule .* "/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC_SSL}%{ENV:W3TC_PREVIEW}.html%{ENV:W3TC_ENC}" [L]
</IfModule>
# END W3TC Page Cache core

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
<otherwise> // it is a user/visitor
 <IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{HTTP_HOST} ^(www.)?siteadress.com$ [NC]
 RewriteCond %{REQUEST_URI} !^/sitefiles/
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ /sitefiles/$1
 RewriteCond %{HTTP_HOST} ^(www.)?siteadress.com$ [NC]
 RewriteRule ^(/)?$ sitefiles/ [L]
 </IfModule>
//是我
#开始W3TC浏览器缓存
AddType text/css.css
AddType text/x-component.htc
AddType应用程序/x-javascript.js
AddType应用程序/javascript.js2
AddType text/javascript.js3
AddType text/x-js.js4
AddType text/html.html.htm
AddType text/richtext.rtf.rtx
AddType image/svg+xml.svg.svgz
AddType text/plain.txt
AddType text/xsd.xsd
AddType text/xsl.xsl
AddType text/xml.xml
AddType video/asf.asf.asx.wax.wmv.wmx
AddType视频/avi.avi
AddType image/bmp.bmp
AddType应用程序/java.class
AddType视频/divx.divx
AddType应用程序/msword.doc.docx
AddType应用程序/vnd.ms-fontobject.eot
AddType应用程序/x-msdownload.exe
AddType image/gif.gif
AddType应用程序/x-gzip.gz.gzip
AddType image/x-icon.ico
AddType image/jpeg.jpg.jpeg.jpe
AddType应用程序/json.json
AddType应用程序/vnd.ms-access.mdb
AddType音频/midi.mid.midi
AddType video/quicktime.mov.qt
AddType音频/mpeg.mp3.m4a
AddType视频/mp4.mp4.m4v
AddType视频/mpeg.mpeg.mpg.mpe
AddType应用程序/vnd.ms-project.mpp
AddType应用程序/x-font-otf.otf
AddType应用程序/vnd.ms-opentype.otf
AddType应用程序/vnd.oasis.opendocument.database.odb
AddType应用程序/vnd.oasis.opendocument.chart.odc
AddType应用程序/vnd.oasis.opendocument.formula.odf
AddType应用程序/vnd.oasis.opendocument.graphics.odg
AddType应用程序/vnd.oasis.opendocument.presentation.odp
AddType应用程序/vnd.oasis.opendocument.spreadsheet.ods
AddType应用程序/vnd.oasis.opendocument.text.odt
AddType音频/ogg.ogg
AddType应用程序/pdf.pdf
AddType image/png.png
AddType应用程序/vnd.ms-powerpoint.pot.pps.ppt.pptx
AddType audio/x-realaudio.ra.ram
AddType应用程序/x-shockwave-flash.swf
AddType应用程序/x-tar.tar
AddType图像/tiff.tif.tiff
AddType应用程序/x-font-ttf.ttf.ttc
AddType应用程序/vnd.ms-opentype.ttf.ttc
AddType音频/wav.wav
AddType音频/wma.wma
AddType应用程序/vnd.ms-write.wri
AddType应用程序/font-woff.woff
AdType应用程序/VND.MS-Excel .xLa.xL.xLSx.xLt.xLW
AddType应用程序/zip.zip
过期于
ExpiresByType文本/css A31536000
ExpiresByType文本/x组件A31536000
ExpiresByType应用程序/x-javascript A31536000
ExpiresByType应用程序/javascript A31536000
ExpiresByType文本/javascript A31536000
ExpiresByType文本/x-js A31536000
ExpiresByType文本/html A3600
ExpiresByType文本/richtext A3600
ExpiresByType图像/svg+xml A3600
ExpiresByType文本/普通A3600
ExpiresByType文本/xsd A3600
ExpiresByType文本/xsl A3600
ExpiresByType文本/xml A3600
过期按类型视频/asf A31536000
ExpiresByType视频/avi A31536000
ExpiresByType图像/bmp A31536000
ExpiresByType应用程序/java A31536000
ExpiresByType视频/divx A31536000
过期按类型应用程序/msword A31536000
ExpiresByType应用程序/vnd.ms-fontobject A31536000
按类型应用程序到期/x-msdownload A31536000
过期按类型图像/gif A31536000
过期类型应用程序/x-gzip A31536000
ExpiresByType图像/x图标A31536000
过期按类型图像/jpeg A31536000
ExpiresByType应用程序/json A31536000
ExpiresByType应用程序/vnd.ms-access A31536000
过期按类型音频/midi A31536000
ExpiresByType视频/quicktime A31536000
过期按类型音频/mpeg A31536000
按视频类型/mp4 A31536000到期
ExpiresByType视频/mpeg A31536000
ExpiresByType应用程序/vnd.ms-project A31536000
按类型申请过期/x-font-otf A31536000
ExpiresByType应用程序/vnd.ms-opentype A31536000
ExpiresByType应用程序/vnd.oasis.opendocument.database