我的网站结构如下:
/public_html
/main site content (html content mostly)
/.htaccess (1)
/secret (dir)
/wp (dir)
/a wordpress install
/.htaccess (2)
/ secret / wp /是一个用于转移到wordpress解决方案的开发站点。这是我在新网站上工作的地方。
当我尝试查看新网站时,根.htaccess导致403 Forbidden错误。我知道这一点,因为从服务器上删除它可以解决问题。
问题是,它正在为我做一些重要的文件扩展名重写我需要的,否则我的主站点会中断。
htaccess(1)
<Files ~ "^\.(htaccess|htpasswd)$">
deny from all
</Files>
DirectoryIndex index.html
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(wp-admin)($|/) - [L] # You don't want to mess with WordPress
RewriteRule ^/secret/wp/ - [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule .* $0.html
# browser requests html
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^\ ]+)\.html
RewriteRule ^/?(.*)\.html$ /$1 [L,R=301]
# check to see if the request is for a html file:
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^/?(.*)$ /$1.html [L]
</IfModule>
Redirect 301 /shop.html https://mydomain.myshopify.com/
添加“RewriteRule ^ / secret / wp / - [L]”这一行是搜索此问题的解决方案的结果,但似乎没有做任何事情。
我的另一个.htaccess似乎根本没有触发。为了清楚起见,我会发布它:
.htaccess(2)
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /secret/wp/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /secret/wp/index.php [L]
# Fix 403 errors on existing directories; WordPress overrides.
RewriteCond %{REQUEST_URI} ^/secret/wp/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
我不知道该怎么做。我不能只删除.htaccess文件或整个网站中断,但我似乎无法弄清楚如何停止403错误。我很确定这是因为重写规则,但它似乎没有停止像它应该的目录。
非常感谢任何帮助。
答案 0 :(得分:0)
我想你可以试试这个.htaccess
winCheck = function () {
if ((a1 == a2 && a1 == a3 && (a1 == "x")) ||
(b1 == b2 && b1 == b3 && (b1 == "x")) ||
(c1 == c2 && c1 == c3 && (c1 == "x")) ||
(a1 == b1 && a1 == c1 && (a1 == "x")) ||
(a2 == b2 && a2 == c2 && (a2 == "x")) ||
(a3 == b3 && a3 == c3 && (a3 == "x")) ||
(a1 == b2 && a1 == c3 && (a1 == "x")) ||
(a3 == b2 && a3 == c1 && (a3 == "x"))
) {
xWin = true;
winAlert();
{
playerWin = playerWin + 1;
xWin = true;
document.getElementById("playerWin").innerHTML = playerWin;
}
答案 1 :(得分:0)
找到答案。我花了一个星期的时间挖掘和测试我能找到的每个可能的论坛,但最终(在删除整个wp安装并重新安装到一个干净的目录之后),我找到了最简单的解决方法来修复它:
我必须编辑我的.htaccess文件以允许“index.php”作为有效文件 默认索引页。
我的域名顶层的.htaccess文件只有这一行: DirectoryIndex index.html
我只需将其更改为DirectoryIndex index.html index.php
然后一切正常。