Apache下typecho开启地址重写问题解决

讨论程序使用中的问题
回复
头像
xiazhicong
帖子: 8
注册时间: 2018年 3月 23日 16:16
来自: 四川成都
联系:

Apache下typecho开启地址重写问题解决

帖子 xiazhicong »

服务器环境:
操作系统(64位):CentOs 7.4 (64位)
服务器软件:Apache/2.4.6 (CentOS)

1、配置httpd.conf

代码: 全选

vim /etc/httpd/conf/httpd.conf


找到下面内容去掉注释
Include conf.modules.d/*.conf

找到下面内容去掉注释,没有的话添加
LoadModule rewrite_module modules/mod_rewrite.so
图片

找到AllowOverride None,改成:
AllowOverride All
配置文件一共有三处都修改,开启全站支持重写功能。
图片

保存退出,以上内容是开启apache的重写功能。
2、重启apache

代码: 全选

systemctl restart httpd.service

查看是否开启rewrite功能

代码: 全选

httpd -M

存在rewrite_module (shared),即表示开启成功!
3、设置typecho永久链接

后台->设置->永久链接,选择启用,选择你喜欢的路径方式,然后保存设置。
图片

保存设置时typecho会自动检测服务器是否支持重写,如果检测通过系统会在网站根目录自动生成重写规则文件.htaccess,此时重写已经设置成功。
图片

如果保存设置时出现如下情况,重写功能检测失败,在你确保服务器配置没有问题的情况下,可以手动添加重写规则文件.htaccess到系统根目录,内容如下:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]

重写配置已经完成,网址中就可以省略入口文件index.php如:
https://www.hehaoke.com/server-log/20.html
头像
ClayMore
帖子: 2481
注册时间: 2007年 11月 29日 02:55
来自: Sleeping Forest
联系:

Re: Apache下typecho开启地址重写问题解决

帖子 ClayMore »

很好的问题解决帖子
ssjname
帖子: 1
注册时间: 2018年 9月 6日 20:58

Re: Apache下typecho开启地址重写问题解决

帖子 ssjname »

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
mmm
帖子: 2
注册时间: 2014年 11月 12日 12:11

Re: Apache下typecho开启地址重写问题解决

帖子 mmm »

不知道为什么我的加了ssl除了主页其他的访问都是404,楼主看见可以帮忙解答一些吗谢谢哦
博客是:caps.ink
回复