1

我正在尝试使用 PHP 从目录创建画廊。我的画廊运行完美,但是当我启用 SEO url 时它不会工作

因为图像/缩略图的网址发生了变化

来自 http://localhost/filemonoe-v2/admin/images/icons/88/screenshots-thumbs/Jellyfish.jpg<<< 这个是对的

to http://localhost/filemono-v2/88/CCleaner-4-04-419-2/admin/images/icons/88/screenshots-thumbs/Jellyfish.jpg <<< 这个错了

我可以看到图像的路径错误,这就是为什么它没有显示在启用 SEO 的网址中

这是设置目录路径的PHP代码。

$images_dir = 'admin/images/icons/'.$id.'/screenshots/';

我在想的是设置baseUrl

$baseurl='http://localhost/filemono-v2/';
$images_dir = ''.$baseurl.'admin/images/icons/'.$id.'/screenshots/';

但它也不适用于 baseUrl。我认为通过设置 baseurl 它假定目录是远程的并且不知道应该是什么可能的解决方案。我不想以这样的方式更改代码,即如果有人从管理面板禁用 SEO url,则画廊在没有 SEO url 的情况下停止工作。我想让它在两种情况下都能工作,有什么想法吗?

这是我的.htaccess

 <IfModule mod_rewrite.c>

  RewriteEngine On

  #software urls
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^([^/]+)/([^/]+)/?$ software-profile.php?pid=$1&slug=$2 [L]

  #browse urls
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ browse.php?page=$1&bid=$2&cat=$3 [L]

  #download urls
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^([^/]+)?$ download.php?did=$1 [L]


  </IfModule>
4

0 回答 0