php - 无法让 url mod_rewrite 在 xampp(windows 8)中工作
问题描述
无论我如何尝试让 url 重写工作,它只是一直失败,我已经谷歌搜索了很多,甚至在 stackoverflow 上尝试了很多代码,但它们都没有为我工作,最终,我被迫请求帮忙。
我希望,例如,当用户单击链接时,我希望用户在浏览器中以 facebook、stackoverflow、wikipedia 的方式或结构显示网站 URL 的漂亮格式等等就像用户访问时一样localhost:jokes=edit?4
,它将其格式化为jokes/edit/4
或类似的东西。
我做的第一件事是设置虚拟主机,我设置的虚拟主机是这个
#Directory structure
<Directory C:/alls>
AllowOverride All
Require all granted
</Directory>
#this is the default address of XAMPP
<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs"
ServerName localhost
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "C:/alls/ijdb/public"
ServerName ijdb.localhost
SetEnv NS_ENV variable_value
</VirtualHost>
在httpd.conf中,我把所有
允许覆盖
至
全部
并在主机文件中添加这个
127.0.0.1 ijdb.localhost
然后,在 .htaccess 中创建它
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !d
RewriteRule ^.*$ index.php [NC,L,QSA]
然而,当我单击除主页链接之外的任何其他链接时,它会返回未找到的对象。我的问题是我该如何解决?
我使用 XAMPP3.2.2,它默认与 apache 2.2.34 一起提供
从错误日志中,这就是我在那里看到的。不知道是不是跟这个有关系...
[Tue Sep 11 02:07:31.554559 2018] [ssl:warn] [pid 1012:tid 376] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Tue Sep 11 02:07:32.123856 2018] [ssl:warn] [pid 1012:tid 376] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Tue Sep 11 02:07:32.239860 2018] [mpm_winnt:notice] [pid 1012:tid 376] AH00354: Child: Starting 150 worker threads.
解决方案
首先确保 rewrite_module 是否启用。转到 apache bin 并加载模块列表,如cd c:\xampp\apache\bin && apache2.exe -M
然后修改你的虚拟主机如下:
<VirtualHost *:80>
DocumentRoot "C:/alls/ijdb/public"
ServerName ijdb.localhost
SetEnv NS_ENV variable_value
<Directory "C:/alls/ijdb/public">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
检查c:\xampp\apache\logs\error.log
文件以获取更多详细信息。
推荐阅读
- python - 将患者坐标转换为 DICOM 图像的体素坐标
- python - Selecting the last element of a list inside a pandas dataframe
- spring-batch - 使用 FlatFileItemReader 读取具有名称模式的文件
- r - R:通过引用分配的链接子集修改data.table不起作用
- html - 为什么图像会调整到父级的宽度,而不是高度?
- reactjs - 刷新页面时,Django-React-Webpack 集成不输出更新的 React 组件
- java - 使用遗传算法解决旅行商问题并在谷歌地图上显示这条路线路线
- visual-studio - .Net Core 3.1 docker app - 我可以在 VS 调试中访问容器,但是如果我关闭调试模式,容器不再响应并且无法加载页面
- google-analytics - 是什么导致 GA 目标完成情况消失?
- c# - 防止 Audit.Net 将 BodyContent 值格式化为字符串?