【问题标题】:How use my htaccess for a subdirectory instead of root directory?如何将我的 htaccess 用于子目录而不是根目录?
【发布时间】:2018-05-31 10:49:34
【问题描述】:

我有一个 htaccess,它适用于根目录中存在的东西,例如 https://www.example.com,但在这种情况下,我想将此 htaccess 用于复制到 https://example.com/app 的脚本

在这种情况下,我们没有 www,我们的脚本也被复制到应用目录。

我在https://www.example.com 中工作的htaccess 存在于本段下方:

RewriteEngine on

# Matching any of 3 domains without www, and no subdomain
RewriteCond %{HTTP_HOST} ^(example)\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

#Now, rewrite to HTTPS:
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^courses/([0-9]+)/?([0-9a-zA-Z_-]+)? index.php?p_post=$1&t=$2 [QSA]

RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^category/(.*) index.php?category=$1 [NC,L]

RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^search/(.*) index.php?search=$1 [NC,L]

RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^tags/(.*) index.php?tags=$1 [NC,L]

<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>

请帮我把这个代码改成https://example.com/app

谢谢!

注意:这个htaccess是正确的,可以在子目录中使用,问题出在我的php脚本上,调试后一切正常。

【问题讨论】:

    标签: php .htaccess mod-rewrite url-rewriting webserver


    【解决方案1】:

    在子文件夹中创建一个新的 .htaccess 文件并输入

    Options -Indexes
    

    如果不想索引那里的内容。

    【讨论】:

    • 索引页面已加载,但它不适用于帖子、类别、搜索和标签,当我想打开像 example.com/app/courses/1/open-source-programming 这样的链接时出现 404 Not Found 错误
    • 看起来像权限错误,请告诉我您正在使用哪个服务器和操作系统
    • 操作系统:Linux,WebServer:LiteSpeed Web 服务器
    • 问题出在我的脚本中,调试后解决了,我使用了这里存在的 htaccess。谢谢
    猜你喜欢
    • 2013-09-12
    • 2013-05-06
    • 2012-07-17
    • 2014-12-21
    • 2023-04-10
    • 2013-10-02
    • 1970-01-01
    • 1970-01-01
    • 2016-12-31
    相关资源
    最近更新 更多