Wordpress .htaccess从路径隐藏第一个子目录
我注意到已经有与我非常相似的问题,这些问题已经在这个网站上得到了回答。 但我一直在苦苦挣扎,没有成功地实施那里提供的解决方案,所以我敢再次提出这个问题。 你能帮忙吗 我在wordpress中开发了一个网站,我将所有内容都放在一个特定的子目录下(不用说,我的主机提供商使用Apache),以便:Wordpress .htaccess从路径隐藏第一个子目录,wordpress,.htaccess,redirect,url-masking,Wordpress,.htaccess,Redirect,Url Masking,我注意到已经有与我非常相似的问题,这些问题已经在这个网站上得到了回答。 但我一直在苦苦挣扎,没有成功地实施那里提供的解决方案,所以我敢再次提出这个问题。 你能帮忙吗 我在wordpress中开发了一个网站,我将所有内容都放在一个特定的子目录下(不用说,我的主机提供商使用Apache),以便: 所有文件都在/public\u html/es/中(由于某些历史原因,子目录的名称为“es”,我在这里指定它是因为它是一个非常常见的字符串,可能需要非常精确的正则表达式) 一切正常,我可以通过URLwww.
#
# /public_html/.htaccess
#
# HISTORY
# 20160309 pdoc (B) ADDED CODE TO ALLOW LOADING OF FONT-AWESONE ICONS ALSO
#
# 20160309 pdoc (B) added next 3 lines
<FilesMatch ".(eot|ttf|otf|woff)">
Header set Access-Control-Allow-Origin "*"
</FilesMatch>
RewriteCond %{HTTP_HOST} ^example.com$ [OR]
RewriteCond %{HTTP_HOST} ^http://example.com$ [OR]
RewriteCond %{HTTP_HOST} ^https://example.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.example.com$ [OR]
RewriteCond %{HTTP_HOST} ^http://www.example.com$
RewriteRule ^/?$ "https\:\/\/www\.example\.com\/es" [R=301,L]
#
# /publi_html/es/.htaccess
# CHANGES:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /es/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /es/index.php [L]
</IfModule>
# END WordPress
#
#/public\u html/.htaccess
#
#历史
#20160309 pdoc(B)添加了允许加载字体图标的代码
#
#20160309 pdoc(B)增加了接下来的3行
标题集访问控制允许原点“*”
RewriteCond%{HTTP_HOST}^example.com$[或]
重写cond%{HTTP_HOST}^http://example.com$[或]
重写cond%{HTTP_HOST}^https://example.com$[或]
RewriteCond%{HTTP_HOST}^www.example.com$[或]
重写cond%{HTTP_HOST}^http://www.example.com$
重写规则^/?$“https\:\/\/www\.example\.com\/es”[R=301,L]
/public\u html/es/.htaccess:
#
# /public_html/.htaccess
#
# HISTORY
# 20160309 pdoc (B) ADDED CODE TO ALLOW LOADING OF FONT-AWESONE ICONS ALSO
#
# 20160309 pdoc (B) added next 3 lines
<FilesMatch ".(eot|ttf|otf|woff)">
Header set Access-Control-Allow-Origin "*"
</FilesMatch>
RewriteCond %{HTTP_HOST} ^example.com$ [OR]
RewriteCond %{HTTP_HOST} ^http://example.com$ [OR]
RewriteCond %{HTTP_HOST} ^https://example.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.example.com$ [OR]
RewriteCond %{HTTP_HOST} ^http://www.example.com$
RewriteRule ^/?$ "https\:\/\/www\.example\.com\/es" [R=301,L]
#
# /publi_html/es/.htaccess
# CHANGES:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /es/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /es/index.php [L]
</IfModule>
# END WordPress
#
#/publi\u html/es/.htaccess
#变化:
#开始WordPress
重新启动发动机
重写基/es/
重写规则^index\.php$-[L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则/es/index.php[L]
#结束WordPress
从技术上讲,它似乎运行良好:您可以通过键入“example.com”来访问该站点,然后在其中导航,因为URL已转换为“example.com/es”
现在。。。浏览器URL字段中出现的“/es/”字符串令人恼火,有时甚至会产生误导,因为它会让一些访问者相信他们在网站的“西班牙语”版本中,而该字符串只是路径的一部分
我不想将整个站点移动到/public\u html下的另一个路径,是否有办法从浏览器URL字段中隐藏“/es”字符串?
当然,我只需要隐藏第一次出现的“/es”(即我想要它)
example.com/es/thesubdirectory/?lang=xx
显示为
example.com/thesubdirectory/?lang=xx
)
正如最初评论的那样,我无法成功实现在stackoverflow中其他地方找到的任何建议
非常感谢您耐心阅读这篇长文章