phpcms 上传到服务器内容页跳转到本地

phpcms 上传到服务器内容页跳转到本地,第1张

  这种现象主要是由在本地开发时用的域名(如localhost)在上传后重新更换不彻底导致的。你可以从一下几个方面入手排查:

配置文件中的域名是否更改,主要是/caches/configs/systemphp系统配置文件以及phpsso_server/caches/configs/systemphp配置文件中的域名进行替换成新域名;

确保在数据库上传时,已经将数据库数据中的所有原域名进行替换成了新域名。因为很多地方包含域名信息,例如每篇文章的url信息中都包含域名,所以建议使用先导出sql文件,然后使用编辑器批量替换更能替换成新域名,再导入到新服务器的数据库中。

如果设置了生成静态,请重新更新生成所有页面;

更新全站缓存。

针对phpcms网站上线更换服务器迁移安装的详细实战讲解推荐iphpcms的教程进行参考。

解决步骤如下:

1在安装PHP环境的目录下面,找到 phpini文件。

2 打开phpini ,查找upload_tmp_dir ,把这个词前面的“;”号去掉,使其生效,然后在“=”号后面加上临时文件夹的目录,比如: c:/windows/temp,这个可以自设。

3在这个文件夹的安全属性里添加 "everyone"用户,赋予读写权限。

出现这个问题一般是权限问题,你的服务器应该是linux的吧。

第一种:给htaccess权限,

方法可用chmod命令来修改文件权限。

chmod 777 htaccess

第二种,如果不需要用到phpcms伪静态则可以删除htaccess文件。

我先说下phpcms v9系统中,网页路由的设置方法:

在 后台-扩展-url规则管理 中设置路由规则,然后在 内容-栏目管理-创建/修改 栏目中选择栏目页、内容页要使用的路由规则。

先说这个的原因是我根据你的和问题描述估计应该是你设置的路由规则中加入了{$title}这样的元素,但是要知道在写路由规则时我们可以使用的只有一下一些元素:

并没有你自创的{$title},所以不被解析,所以你的页面链接中就出现了奇怪的%20title。

如果我猜测的原因是对的,那么提供给你两个解决思路:

放弃使用{$title},使用可用元素组合你的路由规则;

对路由解析程序文件进行二次开发,使其支持{$title},主要修改的文件为打开phpcms\modules\content\classes\urlclassphp 中的122行和144行左右位置。实际上这里的修改在网上有不少资料你可以查找,因为想扩展优化自己路由使其更好符合seo要求的人并不少。

PS:

如仍有什么疑问可以追问,路由相关的设置方法和二次开发可以参考phpcms的官方使用手册以及iphpcms的视频教程。

如果是中文不建议你在链接中引入文章标题,这样会产生很多特殊符号甚至导致链接解析错误。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » phpcms 上传到服务器内容页跳转到本地

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情