关于apache服务器mod_rewrite配置

发布于 2022-09-01 05:20:30 字数 2502 浏览 15 评论 0

我的目的是在地址栏输入的url:
http://localhost/project/ShortURL/index.php/149Ui3
自动重写为
http://localhost/project/ShortURL/index.php?controller=jump&method=jemp&code=149Ui3
apache中添加配置如下(apache2.conf):
1.在/var/www/project/ShortURL目录下建立一个.htaccss文件内容如下:

# Turn on rewrite engine
Options +FollowSymlinks
RewriteEngine on
# More rules below
RewriteRule ^index.php/(.*)$ index.php?controller=jump&method=jump&code=$1 [QSA]

2.在apach2.conf中做了如下配置:

<Directory /var/www/project/ShortURL>
    Options FollowSymLinks
    AllowOverride ALL
    Require all granted
</Directory>

现在问题是每次输入http://localhost/project/ShortURL/index.php/149Ui3都会显示没有css样式控制的http://localhost/project/ShortURL/index.php内容(地址栏还是http://localhost/project/ShortURL/index.php/149Ui3),不能跳转到http://localhost/project/ShortURL/index.php?controller=jump&method=jemp&code=149Ui3这个地址

问题已解决,总结一下

问题描述

我的目的是在地址栏输入的url:
http://localhost/project/ShortURL/index.php/149Ui3
自动重写为
http://localhost/project/ShortURL/index.php?controller=jump&method=jump&code=149Ui3

解决方案

1.在apach2.conf中做如下配置:

<Directory /var/www/project/ShortURL>
    Options FollowSymLinks
    AllowOverride ALL
    Require all granted
</Directory>

2.在/var/www/project/ShortURL目录下建立一个.htaccss文件内容如下:

# Turn on rewrite engine
RewriteEngine on
# More rules below
RewriteBase /
RewriteRule ^index.php/(.*)$ http://localhost/project/ShortURL/index.php?controller=jump&method=jump&code=$1 [L,R=301]

写在最后

感谢开源中国疯狂的蜗牛提供的思路.一点启发,没事多看文档吧,还有一点,浏览器缓存太坑爹了,要不是它早就没这么麻烦了.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文