gpt4 book ai didi

php - 删除 .htaccess 中的 .php 扩展名不起作用

转载 作者:行者123 更新时间:2023-12-04 18:51:17 26 4
gpt4 key购买 nike

我的 ubuntu 电脑上有一个测试网站,网址是:mysite.test。我有营销页面:http://mysite.test/hello.php , http://mysite.test/goodbye.php , ETC。

我也有通配符子域:http://user1.mysite.test/page1.php , http://user2.mysite.test/page.1php , ETC。

我希望在不添加“.php”扩展名(营销站点和子域)的情况下可以访问所有页面。我修改了我的 .htaccess 文件,但它不起作用,我不知道为什么。 mod_rewrite 已启用并正在工作(下面的“删除 www”规则有效)。

#/var/www/mysite.test/public_html/.htaccess
RewriteEngine On
#Remove www - this works
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [R=301,QSA,NC]

#Not need .php extension - this does not work
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ $1.php

删除第一条规则(“删除 www”)不会使其开始工作。

当我去 http://mysite.test/hello我收到 404 Not Found 错误。前往 http://mysite.test/hello.php加载就好了。

当我去 http://user1.mysite.test/page1我收到 404 Not Found 错误。前往 http://user1.mysite.test/page1.php加载就好了。

我的虚拟主机文件如下所示:
#/etc/apache2/sites-available/mysite.test.conf
<VirtualHost *:80>
ServerName www.mysite.test
ServerAlias mysite.test
ServerAdmin fake@gmail.com
DocumentRoot /var/www/mysite.test/public_html

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

<Directory /var/www/mysite.test>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>

<VirtualHost *:80>
ServerName wildcard.mysite.test
ServerAlias *.mysite.test
DocumentRoot /var/www/mysite.test/public_html/app

<Directory /var/www/mysite.test/public_html/app>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>

我错过了什么?谢谢你。

最佳答案

我不确定我能否为您的问题提供有用的解决方案,但我有一段类似的代码可以工作:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.|/]+)$ $1.php [NC,L]

这设置如果它不是一个文件,并且如果它不包含 . (例如图像 reference.jpg 然后它有 .php 附加到文件名。

这对我来说非常有效。

关于php - 删除 .htaccess 中的 .php 扩展名不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39499404/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com