有没有人可以帮我创建一个体面的htaccess文件?我现在就在这:
RewriteEngine on
Options +FollowSymlinks -MultiViews
RewriteCond %{SERVER_PORT} =80
RewriteCond %{HTTP_HOST} ^(www.)?outsideit.net$
RewriteCond %{REQUEST_URI} !^/main/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://outsideit.net/main/$1
RewriteCond %{HTTP_HOST} ^outsideit\.net$
RewriteRule ^(/)?$ http://outsideit.net/main/index.php [R=301,L,QSA,NE]
我的目标是从网址中删除www,然后将网址重定向到子文件夹主文件,然后隐藏/ main /,这样网址将始终为http://outsideit.net 我可以通过以下方式实现上述目标:
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [NE,R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/main/
RewriteRule ^(.*)$ /main/$1
RewriteCond %{HTTP_HOST} ^(www.)?outsideit.net$
RewriteRule ^(/)?$ main/ [L]
但随后该网站不再有效并出现错误"该网页未正确重定向"。所以我需要以某种方式去index.php。
感谢您提供任何帮助。
威廉
答案 0 :(得分:0)
WordPress自行完成此操作,无需像您一样修改.htaccess。按照此处的说明操作:http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory
首先,在开始之前,首先回到安装的根(不是网站的根目录)中的干净.htaccess。供您参考,以下是默认.htaccess的副本:
# 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
然后按照以下指示:
为要存储的核心WordPress文件创建新位置(我们将在示例中使用/ wordpress)。 (在linux上,使用www目录中的mkdir wordpress。你可能想在你创建的wordpress目录中使用&#34; chown apache:apache&#34;)
转到“常规”面板。
在WordPress地址(URL)框中:将地址更改为主WordPress核心文件的新位置。示例:http://example.com/wordpress
在网站地址(URL)框中:将地址更改为根目录的URL。示例:http://example.com
单击“保存更改”。 (不要担心错误消息,此时不要尝试查看您的博客!您可能会收到有关未找到文件的消息。)
将WordPress核心文件移动到新位置(WordPress地址)。
将index.php和.htaccess文件从WordPress目录复制(NOT MOVE!)到您网站的根目录(博客地址)。 .htaccess文件是不可见的,因此您可能必须将FTP客户端设置为显示隐藏文件。如果你没有使用漂亮的永久链接,那么你可能没有.htaccess文件。如果您在Windows(IIS)服务器上运行WordPress并使用非常永久链接,那么您的WordPress目录中将有一个web.config而不是.htaccess文件。对于index.php文件,说明保持不变,将index.php文件复制(不要移动)到根目录。 web.config文件必须与.htaccess文件区别对待,因此您必须将web.config文件移动(不要复制)到根目录。
在文本编辑器中打开根目录的index.php文件
更改以下内容并保存文件。改变说:
require( dirname( __FILE__ ) . '/wp-blog-header.php' );
使用您的WordPress核心文件的目录名称,如下所示:require( dirname( __FILE__ ) . '/wordpress/wp-blog-header.php' );
登录新位置。它现在可能是http://example.com/wordpress/wp-admin/
为要存储的核心WordPress文件创建新位置(我们将在示例中使用/ wordpress)。 (在linux上,使用www目录中的mkdir wordpress。你可能想在你创建的wordpress目录中使用&#34; chown apache:apache&#34;)
它将自动从www重定向到非www,无需进行其他修改。