逝水年华 发表于 2020-11-4 08:18:40

门户和社区域名区分问题

门户用的www.域名,社区用的bbs.域名
社区内容连接用www.也能访问
怎么让社区和门户的域名彻底区分?用www.访问社区内容时跳转到bbs.域名,用bbs.访问门户内容时跳转到www.域名

浅生 发表于 2020-11-4 08:19:34

既要门户、社区域名彻底区分;又要门户访问跳转社区,社区访问跳转门户?

两者不能并全;监定完毕。

Discuz智能体 发表于 2025-3-21 06:25:13

要实现门户和社区的域名彻底区分,并且确保访问时自动跳转到正确的域名,可以通过以下步骤来实现:

### 1. 配置服务器(以Nginx为例)
如果你使用的是Nginx服务器,可以通过配置Nginx的`server`块来实现域名的区分和跳转。

#### 门户域名配置(www.域名)
server {
    listen 80;
    server_name www.yourdomain.com;
   
    location / {
      # 门户的根目录
      root /path/to/your/portal;
      index index.php index.html index.htm;
      
      # 如果访问的是社区内容,跳转到bbs.域名
      if ($host = 'www.yourdomain.com') {
            rewrite ^/forum/(.*)$ http://bbs.yourdomain.com/forum/$1 permanent;
      }
    }
   
    # 其他配置...
}

#### 社区域名配置(bbs.域名)
server {
    listen 80;
    server_name bbs.yourdomain.com;
   
    location / {
      # 社区的根目录
      root /path/to/your/bbs;
      index index.php index.html index.htm;
      
      # 如果访问的是门户内容,跳转到www.域名
      if ($host = 'bbs.yourdomain.com') {
            rewrite ^/portal/(.*)$ http://www.yourdomain.com/portal/$1 permanent;
      }
    }
   
    # 其他配置...
}

### 2. 修改Discuz配置文件
在Discuz的配置文件中,确保门户和社区的URL配置正确。

#### 门户配置
在门户的`config/config_global.php`文件中,确保以下配置正确:
$_G['siteurl'] = 'http://www.yourdomain.com/';

#### 社区配置
在社区的`config/config_global.php`文件中,确保以下配置正确:
$_G['siteurl'] = 'http://bbs.yourdomain.com/';

### 3. 修改Discuz后台设置
登录Discuz后台,进入“全局” -> “站点信息”,确保门户和社区的URL设置正确。

#### 门户设置
- 站点URL:`http://www.yourdomain.com/`

#### 社区设置
- 站点URL:`http://bbs.yourdomain.com/`

### 4. 使用.htaccess文件(如果使用Apache服务器)
如果你使用的是Apache服务器,可以通过`.htaccess`文件来实现跳转。

#### 门户的.htaccess文件
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.yourdomain\.com$
RewriteRule ^forum/(.*)$ http://bbs.yourdomain.com/forum/$1

#### 社区的.htaccess文件
RewriteEngine On
RewriteCond %{HTTP_HOST} ^bbs\.yourdomain\.com$
RewriteRule ^portal/(.*)$ http://www.yourdomain.com/portal/$1

### 5. 测试
完成以上配置后,访问`www.yourdomain.com/forum/`应该会自动跳转到`bbs.yourdomain.com/forum/`,访问`bbs.yourdomain.com/portal/`应该会自动跳转到`www.yourdomain.com/portal/`。

### 注意事项
- 确保服务器配置正确,避免循环跳转。
- 如果使用了CDN或其他代理服务,确保这些服务不会影响跳转规则。
- 测试时清除浏览器缓存,避免缓存影响测试结果。

通过以上步骤,你应该能够实现门户和社区域名的彻底区分,并确保访问时自动跳转到正确的域名。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页: [1]
查看完整版本: 门户和社区域名区分问题