我在域 www.techchef.co
上有子域名 imonline我已经在cpanel中创建了指向此文件夹的子域。所以网址应为imonline.techchef.co
我已经尝试过wordpress提供.htacess为下面提到的子域名但是不起作用,我也尝试过其他一些配置,但它也不起作用。
请指导我.htacess文件中缺少的内容
My Current htacess
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
</IfModule>
# END WordPress
之前我写的是
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ http://imonline.techchef.co/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /imonline/index.php [L]
</IfModule>
# END WordPress
答案 0 :(得分:2)
关于我们的小评论对话:
你失去了我。
您的 .htaccess 存在很多问题。但我不怪你。我相信每个人在开始时都很难与mod_rewrite相处......即使在今天,我甚至有时会挣扎。 ;)
您有太多[L]
个标记。你觉得他们怎么做? L 代表 last 。 [L]
终止路由例程。所有后续指令都将被忽略。
您不能使用RewriteCond %{HTTP_HOST} ^subdomain\.domain\.tld$
后跟适当的RewriteRule
。
您之前的尝试会将每个请求重定向到子域,并且由于[L]
标志而暂停到那里。
更糟糕的是,您在测试过程中使用了[R=301]
(移动永久)!!如果您的访问者同时访问过您的网站,他们对您网站的体验可能永远被打破!直到他们清理浏览器缓存。
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
应该将wp-admin
目录中的所有内容重定向到wp-admin/index.php
文件,这不一定是您想要的。 wp-admin/edit/article
也会被转到wp-admin/
。
这总结了我所注意到的所有错误。现在让我们重新定位您的子域名...我还没有对此进行测试,因为我的机器目前尚未设置进行测试,因此您可能需要进行一些调试。实际上,您可能需要进行一些调试。
<IfModule mod_rewrite.c>
RewriteRule On
RewriteBase /
# Redirect the subdomain to a directory.
RewriteCond %{HTTP_HOST} ^imonline\.techchef\.co$ [NC] # NC = no case
RewriteRule ^(.*)$ http://techchef.co/imonline/$1 [L]
# Do not redirect actually existing files and directories. Optional?
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule . - [L]
# Redirect everything to index.php, your last RewriteRule of your current .htaccess
RewriteRule . index.php
</IfModule>
最后RewriteRule
取决于您的CMS。我对WordPress没什么经验,所以我说不出来。您可以在线找到相应的信息。
事实上,快速谷歌搜索会产生正确的.htaccess。针对不同方案here有多个模板。向下滚动一下,找到一个子域名。
我希望你至少可以学到一些东西......:P