Cor*_*ora 5 php apache ubuntu .htaccess
我刚刚在Ubuntu 12上安装了LAMP堆栈,并且遇到了Apache的.htaccess文件的问题.我启用了重写和重定向模式,并且.htaccess文件正在运行(如果没有'www'存在,URI将重定向到'www'),但无论我尝试什么,我都无法删除文件扩展名.我<Files>没有运气就试过这个指令.我当前的文件包含以下内容:
RewriteEngine On
# Remove file extension
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*)$ $1.php [L]
# Force www
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)
关于如何解决这个非常恼人的问题的任何建议?
您不使用 htaccess 来执行此操作,而是使用应用程序删除扩展名,然后使用 htaccess 将无扩展名的 URL 映射到真实文件。这条规则
# Remove file extension
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) $1.php [L]
Run Code Online (Sandbox Code Playgroud)
表示“如果请求的资源不作为文件存在,则查找具有.php扩展名的资源”。因此,您从应用程序中的所有链接中删除扩展名,并且此规则将使 php 文件在没有扩展名的情况下运行。您的 htaccess 按原样正常,您需要更新您的应用程序。
| 归档时间: |
|
| 查看次数: |
5601 次 |
| 最近记录: |