drupal网站搬家后简洁链接失效的处理办法

高速度 主机小编(www.gaosudu.com)处理一个drupal站点从本地wamp调试环境迁移到高速度 主机php虚拟主机后简洁链接测试失效的案例,这里就分享给大家如何处理这一个看上去不是问题,但确实又是一个问题的问题。虽然在前面高速度 主机(www.gaosudu.com)发表了一篇使用Clean URLs(简洁链接)实现Drupal伪静态的文章,上面的理论都是不会有错的,只是在实际运用中会出现一些小小问题,为什么呢?因为您本地的环境配置和我们的php空间配置是有区别的。而对于这些小小的区别造成的小问题我们只需要做一些小小的调整,就能让您的drupal站点完美的在香港免备案php独立ip空间上运行。NOTE:在简洁链接失败的时候http://.../user是进不了网站后台的!需要使用http://.../?q=user这条路径进入后台!下图是简洁链接失败后的显示。其实解决这个问题的思路,就是对站点下的.htaccess文件的伪静态规则进行调整!在以前发的文章中已经提到过只要支持.htaccess就支持伪静态,而drupal中的clean url说白一点就是伪静态。换句话说,高速度 主机的香港php空间是完全支持clean url的。而且最值得一提的是drupal的.htaccess文件中的伪静态规则都是写好了的,我们只需要把带#的注释删除掉就能启用了,唯一的要求吧,也就是能看懂文件中的英文提示。好吧,以上都是对问题的分析和简要的对drupal中的.htaccess文件的了解。而解决的方法也是简单的让人感觉到无奈。本来小编是在默认的.htaccess文件中调试伪静态规则,可是在小编把伪静态相关的内容都删掉以后再进入站点报服务器500错误!好吧,这里的原理小编也不是很清楚,但在注释掉默认的.htaccess文件,在drupal.org官网上找到dreamhost共享主机的伪静态规则,OK,问题解决了。NOTE:如果使用.htaccess文件实现了伪静态,那么就不必到后台去开启cleanurl了。下面是伪静态规则,果断分享了。

<IfModule mod_rewrite.c>   RewriteEngine on   RewriteBase /   RewriteCond %{REQUEST_FILENAME} !-f   RewriteCond %{REQUEST_FILENAME} !-d   RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
如果您的站点放在二级目录下(比方说放在../gaosudu这个目录下),只要RewriteBase /gaosudu和RewriteRule ^(.*)$ /gaosudu/index.php?q=$1 [L,QSA]置换掉上列规则中的相应部分,并将它上传到您站点相应的根目录就OK了。

如果你不会新建.htaccess文件请查看:高速度 主机总结如何新建.htaccess文件的方法

如果你还不知道htaccess文件是什么东西?为何物?请你点击阅读:高速度 主机原创:手把手介绍什么是.htaccess文件

纯Linux环境下高端免备案【香港独立IP地址】php空间,仅仅只需199元一年起。商务中国域名核心代理直销50元注册国际顶级域名

本文地址:https://www.gaosudu.com/drupal/8395.html