当前位置: 首页 > 知识库问答 >
问题:

Wordpress/htaccess-允许访问子目录

宋飞舟
2023-03-14

我有一个子目录(app)我想访问的是在我的wordpress站点的根文件夹。我看了这里:

https://wordpress.stackexchange.com/questions/20152/cannot-access-non-wordpress-subdirectories-as-wordpress-overrides-them-with-a-40

我已经尝试了解决方案,但没有任何效果。

我还尝试将一个单独的.htaccess文件添加app子目录,如下所示:

DirectoryIndex index.php index.html index.htm
Options +Indexes

但这似乎没有帮助:

我现在尝试使用的主.htaccess如下所示:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^/app/(.*)$ [OR]
RewriteRule ^.*$ - [L]
</IfModule>

# 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

我得到一个404错误。

我做错了什么?如果我在iPhone上查看该网站,清除手机上的safari历史记录是否足以刷新数据,从而识别新的.htaccess?谢谢

更新

我补充说:

<Directory "/home/eamondev/public_html/subconscious/">
    Options All
    AllowOverride All
    Require all granted
</Directory>

对于在httpd.conf中获取Includeed的.conf文件,重新启动apache,但没有帮助。

我还尝试:

<Directory "/home/eamondev/public_html/subconscious/">
    AllowOverride All
</Directory>

而且它不起作用,我不确定我是否只需要AllowOverride所有的——不管怎样,这似乎都没有帮助。

更新

在一个. conf文件,是包含d在httpd.conf,我尝试:

<VirtualHost 162.241.180.99:80>
    ServerName eamondev.com
    DocumentRoot /home/eamondev/public_html

    <Directory "/home/eamondev/public_html/">
      AllowOverride All
    </Directory>
</VirtualHost>

但这没有帮助。

有什么理由我不应该只是在我的服务器上做另一个子域,然后把文件托管在那里,这样到达它们就不会与我的wordpress网站冲突?


共有2个答案

闾丘鸣
2023-03-14

使用下面的代码我认为它会工作。

<IfModule mod_rewrite.c>
RewriteEngine On

# Map http://www.example.com to /app.
RewriteRule ^$ /app/ [L]

# Map http://www.example.com/x to /app/x unless there is a x in the web root.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/app/
RewriteRule ^(.*)$ /app/$1

# Add trailing slash to directories within app
# This does not expose the internal URL.
RewriteCond %{SCRIPT_FILENAME} -d
RewriteRule ^app/(.*[^/])$ http://www.example.com/$1/ [R=301]
</IfModule>
宗政英才
2023-03-14

事实证明,我的域尚未传播,因此无法查看/测试我所做的任何更改。在我意识到它仍在传播之前,我还想创建另一个子域,并从那里托管我需要的文件

 类似资料:
  • 我正在创建一个脚本,加载在其他网站的外部。它加载CSS和HTML,在我自己的服务器上工作得很好。 但还是不管用。

  • 你有解决办法吗?

  • 问题内容: 我看到以下错误: 使用此代码: 是什么原因引起的,如何解决? 问题答案: 在当前域之外发出ajax请求时,Javascript是受限制的。 例1:您的域名为example.com,并且您想向test.com提出请求=>您不能。 例2:您的域名是example.com,并且您想向inner.example.com发送请求,但是您不能。 例3:您的域名为example.com:80,并且您

  • 我正在使用Microsoft扩展访问Azure DevOps中的密钥库,从密钥库中获取秘密。我得到了这个错误消息,它似乎说我需要允许Azure Devops代理访问KeyVault的权限。“无法获取托管服务主体的访问令牌。请为虚拟机”https://aka.ms/azure-MSI-docs“配置托管服务标识(MSI)。状态代码:400,状态消息:错误请求” 我在一个单独的测试订阅中运行这个功能,

  • null 我的应用程序托管在Google App Engine上,因此默认情况下ADC在服务器上运行时将使用默认服务帐户。我已经尝试通过使用gcloud auth application-default-account登录和使用我的G Suite管理帐户以及我的个人帐户(两者都是GCP项目的所有者)登录来在本地运行这段代码。失败后,我做了一些研究,并意识到要使OAuth2能够访问我的G套件用户数据

  • 我在做一个离子应用程序。我的问题是:当我试图从服务器获取数据时,我得到了这样的结果: $http.get(url).success(函数(响应){...}