您的当前位置:首页>全部文章>文章详情

ThinkPHP6部署到Apache的详细步骤

发表于:2022-12-15 12:06:57浏览:2191次TAG: #ThinkPHP6 #部署 #Apache

前面已经写了thinkphp6部署到nginx的文章经验,今天写一下thinkphp6部署到Apache的方式:
步骤一:找到Apache的httpd.conf文件, 输入如下代码:

<VirtualHost *:80>
    # 以上改为你使用的端口, 与httpd.conf中listen的端口一致
    ServerName www.doamin.com
    # 以上改为你的域名
    DocumentRoot "d:/wwwroot/gouguoa/public"
    # 以上改为你的ThinkPHP项目里的public文件夹
    DirectoryIndex index.html index.php

    CustomLog "c:/inetpub/web_1.log" "[%a]%{%F %T}t id=%{APIIndex}i time=%D(us) url=%U%q"
    # 以上为存放日志文件的位置
    <Directory "d:/wwwroot/gouguoa/public">
    # 以上改为你的ThinkPHP项目里的public文件夹
        Options -Indexes +FollowSymlinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

解析:AllowOverride指令按类别决定了.htaccess文件中哪些指令才是有效的。 当AllowOverride设置成None时,相应的配置目录下的 .htaccess 文件是不被读取,被完全忽略的,此时 .htaccess文件也就完全不生效。 当AllowOverride设置成 All 时,所有具有“.htaccess”作用域的指令都会生效,意味着原来Apache中的指令都将会按 .htaccess文件中的指令重写。

步骤二:在httpd.conf里搜索mod_rewrite, 看下面这行前面是否有#注释

LoadModule rewrite_module modules/mod_rewrite.so

如果前面有#号, 就去掉,然后保存

步骤三:在ThinkPHP项目中编辑这个文件 /public/.htaccess, 使其内容如下

<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews
  RewriteEngine On

  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

步骤四:重启Apache, 命令可能是

httpd -k restart

步骤五 将你的域名指向你的服务器的IP

然后你可以这样访问项目了,是不是很简单,该方法适合用于部署勾股系列的系统哦。