ThinkPHP 您现在的位置是:首页 > 开发笔记 > ThinkPHP

ThinkPHP 3.X上传阿里云弹性web托管报错,静态资源无法访问

来源:惠达浪原创 发布时间:2018-04-17 最后更新:2019-05-11 4241已围观

摘要做好的网站放上阿里云弹性web托管会报错,连静态资源都访问不了。其实,这就是弹性web托管服务器的特点,解决方法很简单。

如题,做好的网站放上阿里云弹性web托管会报错,连静态资源都访问不了。

原因: 弹性web托管用的是apache2.4,伪静态规则跟thinkcmf默认的apache2.2不通用 解决:

  1. 修改 /.htaccess 为以下内容:

    #伪静态和泛域名 
    #此文件禁止在行内注释RewriteEngine on
    #禁止对图片等文件重写:没有这一条,所有的404都会执行index.php脚本,耗费大量资源。
    RewriteCond %{REQUEST_URI} !((.*).jpg|.jpeg|.bmp|.gif|.png|.js|.css)$
    #禁止对/public文件夹内重写,作用同上
    RewriteCond %{REQUEST_URI} !(^/public/(.*))$
    #如果是一个物理存在的目录,禁止重写
    RewriteCond %{REQUEST_FILENAME} !-d
    #如果是一个物理存在的文件,禁止重写
    RewriteCond %{REQUEST_FILENAME} !-f
    #上面2条不识别REQUEST_FILENAME时的替代写法
    #RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
    #RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
    #php api模式,服务器能识别PATH_INFO
    #RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
    #php fastcgi模式 服务器不识别PATH_INFO
    RewriteRule ^(.*)$ index.php [E=PATH_INFO:$1,QSA,PT,L]

很赞哦! (528)


站点信息

  • 网站平台ThinkCMF 5.1.5
  • PHP版本:7.3.31
  • QQ交流群: 惠达浪技术交流